我需要克隆一个 div,并且在克隆 div 中的所有元素后应该有唯一的 id。我只需要使用 javascript 而不是 jquery 来执行此操作。
谁能帮助我。
以下代码克隆一个元素,使用递归函数将随机 id 分配给克隆的元素及其子元素,并将其附加到文档正文。根据您的需要进行调整。另请参阅此 jsfiddle
var someClone = someDiv.clone(true), children = someClone.childNodes;
someClone.id = Math.floor(1000+Math.random()*10000).toString(16);
reId(children);
function reId(nodes){
for (var i=0;i<nodes.length;(i+=1)){
var children = nodes[i].childNodes;
nodes[i].id = Math.floor( 1001+Math.random()*10000 ).toString(16);
if (children.length){
reId(children);
}
}
}
document.body.appendChild(someClone);