Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何批量添加这些元素?_Javascript - Fatal编程技术网

Javascript 如何批量添加这些元素?

Javascript 如何批量添加这些元素?,javascript,Javascript,我需要添加以下元素: <div class="checkbox"> <label> <input type="checkbox" name="optionsRadios" id="optionsRadios1" value="option1"> <input class="inputone" id="optionsRadios1text" type="text"> </label> </div>

我需要添加以下元素:

<div class="checkbox">
  <label>
    <input type="checkbox" name="optionsRadios" id="optionsRadios1" value="option1">
    <input class="inputone" id="optionsRadios1text" type="text">
  </label>
</div>

为此:

<div id="childs"></div>


有没有一种方法可以在不使用多个appendChild函数的情况下执行此操作?

无需调用多个
appendChild()
函数


document.getElementById('childs').appendChild(document.querySelector('.checkbox‌​'));

无需调用多个
appendChild()
函数


document.getElementById('childs').appendChild(document.querySelector('.checkbox‌​'));

无需调用多个
appendChild()
函数


document.getElementById('childs').appendChild(document.querySelector('.checkbox‌​'));

无需调用多个
appendChild()
函数


document.getElementById('childs').appendChild(document.querySelector('.checkbox‌​'));

如果您在DOM中还没有此标记,那么这就足够了:

var html = "<div class='checkbox'>"+
"  <label>"+
"    <input type='checkbox' name='optionsRadios' id='optionsRadios1' value='option1'>"+
"    <input class='inputone' id='optionsRadios1text' type='text'>"+
"  </label>"+
"</div>"

var  childs = document.getElementById('childs')

childs.innerHTML = childs.innerHTML + html
和代码:

var btn = document.getElementById('btn')
, children = document.getElementById('children')
, cb = document.getElementById('cb')

btn.addEventListener('click', add)

function add() {
    var n = cb.cloneNode(true)
    n.style.display = '';   
    children.appendChild(n)
}

但是请注意,您在“模板”中使用了
id
属性,因此在多次插入之后,您将拥有具有相同id的多个元素。 您可能需要更新该属性和/或仅使用
name
属性


否则,您可以在DOM中查询该子节点,并使用一个appendChild调用将其插入。

如果您在DOM中还没有此标记,只需执行以下操作即可:

var html = "<div class='checkbox'>"+
"  <label>"+
"    <input type='checkbox' name='optionsRadios' id='optionsRadios1' value='option1'>"+
"    <input class='inputone' id='optionsRadios1text' type='text'>"+
"  </label>"+
"</div>"

var  childs = document.getElementById('childs')

childs.innerHTML = childs.innerHTML + html
和代码:

var btn = document.getElementById('btn')
, children = document.getElementById('children')
, cb = document.getElementById('cb')

btn.addEventListener('click', add)

function add() {
    var n = cb.cloneNode(true)
    n.style.display = '';   
    children.appendChild(n)
}

但是请注意,您在“模板”中使用了
id
属性,因此在多次插入之后,您将拥有具有相同id的多个元素。 您可能需要更新该属性和/或仅使用
name
属性


否则,您可以在DOM中查询该子节点,并使用一个appendChild调用将其插入。

如果您在DOM中还没有此标记,只需执行以下操作即可:

var html = "<div class='checkbox'>"+
"  <label>"+
"    <input type='checkbox' name='optionsRadios' id='optionsRadios1' value='option1'>"+
"    <input class='inputone' id='optionsRadios1text' type='text'>"+
"  </label>"+
"</div>"

var  childs = document.getElementById('childs')

childs.innerHTML = childs.innerHTML + html
和代码:

var btn = document.getElementById('btn')
, children = document.getElementById('children')
, cb = document.getElementById('cb')

btn.addEventListener('click', add)

function add() {
    var n = cb.cloneNode(true)
    n.style.display = '';   
    children.appendChild(n)
}

但是请注意,您在“模板”中使用了
id
属性,因此在多次插入之后,您将拥有具有相同id的多个元素。 您可能需要更新该属性和/或仅使用
name
属性


否则,您可以在DOM中查询该子节点,并使用一个appendChild调用将其插入。

如果您在DOM中还没有此标记,只需执行以下操作即可:

var html = "<div class='checkbox'>"+
"  <label>"+
"    <input type='checkbox' name='optionsRadios' id='optionsRadios1' value='option1'>"+
"    <input class='inputone' id='optionsRadios1text' type='text'>"+
"  </label>"+
"</div>"

var  childs = document.getElementById('childs')

childs.innerHTML = childs.innerHTML + html
和代码:

var btn = document.getElementById('btn')
, children = document.getElementById('children')
, cb = document.getElementById('cb')

btn.addEventListener('click', add)

function add() {
    var n = cb.cloneNode(true)
    n.style.display = '';   
    children.appendChild(n)
}

但是请注意,您在“模板”中使用了
id
属性,因此在多次插入之后,您将拥有具有相同id的多个元素。 您可能需要更新该属性和/或仅使用
name
属性




否则,您可以查询该子节点的DOM并用一个appendChild调用插入它。

就像将标记放入字符串并注入它一样?您只需要一个
appendChild
,类似于
document.getElementById('childs').appendChild(document.querySelector('.checkbox'))
像将标记放入字符串并注入吗?您只需要一个
appendChild
,类似于
document.getElementById('childs').appendChild(document.querySelector('.checkbox'))
像将标记放入字符串并注入吗?您只需要一个
appendChild
,类似于
document.getElementById>('childs').appendChild(document.querySelector('.checkbox'))
类似于将标记放入字符串并注入它吗?您只需要一个
appendChild
,类似于
document.getElementById('childs').appendChild(document.querySelector('.checkbox'))
我已经有多个.checkbox元素,但我只是尝试了,它不起作用。为什么?@xRobot-嗯,这是不同的,如果你有多个
.checkbox
元素,你应该这么说,因为这需要迭代和多个
appendChild
我已经有多个.checkbox元素,但我只是尝试了,它不起作用。为什么?@xRobot-嗯,如果你有多个
.checkbox
元素,那就不一样了,你应该这么说,因为那需要迭代和多个
appendChild
我已经有多个.checkbox元素了,但我只是尝试了一下,它不起作用。为什么?@xRobot-嗯,如果你有多个
.checkbox
元素,那就不一样了nts您应该这么说,因为这需要迭代和多个
appendChild
我已经有多个.checkbox元素,但我只是尝试了一下,它不起作用。为什么?@xRobot-嗯,这是不同的,如果您有多个
.checkbox
元素,您应该这么说,因为这需要迭代和多个
appendChild
刚尝试过,但它替换了中的所有其他元素。起初是空的,但随后不是空的。它重置了所有值:(我添加了完整的示例。请参阅更新的应答名称不必是唯一的。但是如果您将其发布到服务器,则具有相同内容的多个元素将是最后一个发布的元素,或者您可以将名称更改为'something[]'它将生成一个数组。我建议您去阅读MDN关于DOM和窗体的说明。刚刚尝试过,但它会替换中的所有其他元素。起初为空,但随后为空。它会重置所有值:(我添加了fiddle with full example。请参阅更新的应答器名称不必是唯一的。但如果您将其发布到服务器,则具有相同名称的多个元素将是最后一个发布的元素,或者,您可以将名称更改为“某物[]'它将生成一个数组。我建议您去阅读MDN关于DOM和窗体的说明。刚刚尝试过,但它会替换中的所有其他元素。起初为空,但随后为空。它会重置所有值:(我添加了fiddle with full example。请参阅更新的应答器名称不必是唯一的。但如果您将其发布到服务器,则具有相同名称的多个元素将是最后一个发布的元素,或者,您可以将名称更改为“某物[]“它将生成一个数组。我建议您去阅读MDN关于DOM和窗体的说明。刚刚尝试过,但它会替换中的所有其他元素。最初为空,但随后为空。它会重置所有值。”