我想将Predicate
元素动态地添加到FilteredList
中。但是每个Predicate
元素中都应该有一个input元素。因此,它们两个都应重新创建并附加。有人可以告诉我怎么做
<li>
<ul>
答案 0 :(得分:0)
您必须首先将新创建的输入附加到 li 元素。然后将该 li 附加到 ul 元素。节点类型 text 的形式也应为字符串:
尝试以下方式:
function add_down() {
var node = document.createElement("LI");
var element = document.createElement("input");
element.type = 'text';
element.placeholder = "Enter Name";
node.append(element);
document.getElementById("start").appendChild(node);
}
input[type=text]{
margin: 5px;
}
<div style="">
<div>
<ul id="start" style="list-style:none">
<li><input type="text" placeholder="category"></li>
</ul>
</div>
<div><input type="button" value="Add" onclick="add_down()"></div>
</div>
答案 1 :(得分:0)
以将li
附加到ul
的相同方式,可以使用appendChild
将input
放入li
中。另外,您的代码也存在一些问题:
element.type = text;
应该是element.type = "text";
。ul
中没有id="first"
,我想你打算用ul
来定位id="start"
。
function add_down() {
var node = document.createElement("li");
var element = document.createElement("input");
element.type = "text";
element.placeholder = "Enter Name";
node.appendChild(element); // <-- append element to node
document.getElementById("start").appendChild(node);
}
<div style="">
<div>
<ul id="start" style="list-style:none">
<li><input type="text" placeholder="category"></li>
</ul>
</div>
<div><input type="button" value="Add" onclick="add_down()"></div>
</div>
答案 2 :(得分:0)
function add_down() {
var node = document.createElement("LI");
var element = document.createElement("input");
element.type = "text";
element.placeholder = "Enter Name";
node.appendChild(element)
document.getElementById("start").appendChild(node);
}
答案 3 :(得分:0)
您的代码中只有很少的指针,您可以将node
变量追加到ID为first
的不存在的元素上,然后只需将element
变量追加到node
变量,然后将其附加到主<ul>
。而且text
都没有定义。
我希望这会有所帮助。
function add_down() {
var node = document.createElement("li");
var element = document.createElement("input");
element.type = ""; //text is not define
element.placeholder = "Enter Name";
node.appendChild(element); //Append the it to the node
document.getElementById("start").appendChild(node);
}
<div style="">
<div>
<ul id="start" style="list-style:none">
<li><input type="text" placeholder="category"></li>
</ul>
</div>
<div><input type="button" value="Add" onclick="add_down()"></div>
</div>
答案 4 :(得分:0)
<div style="">
<div>
<ul id="start" style="list-style:none">
<li><input id='input1' type="text" placeholder="category" onchange="add_down()"></li>
</ul>
</div>
</div>
<script>
document.getElementById("input1").focus()
function add_down() {
var node = document.createElement("li");
var element = document.createElement("input");
element.setAttribute("onchange", "add_down();");
element.type = "text";
element.placeholder = "Enter Name";
node.appendChild(element); // <-- append element to node
document.getElementById("start").appendChild(node);
element.focus();
}
</script>
答案 5 :(得分:0)
首先,您应该创建LI元素,然后创建INPUT元素并将输入元素添加到创建的LI元素中,最后将包含输入元素的LI元素附加到UL元素中 您可以使用此代码
<script>
function add_down() {
var node = document.createElement("LI");
var element = document.createElement("input");
element.setAttribute('type', "text");
element.setAttribute('placeholder', "Enter Name");
node.appendChild(element);
document.getElementById("start").appendChild(node);
}
</script>