我知道如何使用纯JavaScript来克隆对象并增加数字,但是我想知道最好的方法是替换ID和标签元素的“for”之类的其他属性,这样当附加克隆的字段集时它们不会重复形式。
有人可以使用普通的'JavaScript吗?
给我一个如何做到这一点的快速示例答案 0 :(得分:0)
你可以像这样编写你的“标签”而不是“for”:
<p><label>Text 1 : <input type="text" name="text[]" /></label></p>
<p><label>Text 2 : <input type="text" name="text[]" /></label></p>
<p><label>Text 3 : <input type="text" name="text[]" /></label></p>
答案 1 :(得分:0)
正常克隆节点,并在将它们插入文档之前进行修改。如果两个具有相同ID的元素节点存在并不重要,只要它们不是同时插入到文档的childNodes树中。
var copy= document.cloneNode(element);
n++;
copy.getElementsByTagName('label')[0].htmlFor= 'thing'+n;
copy.getElementsByTagName('input')[0].id= 'thing'+n;
element.parentNode.appendChild(copy);