所以基本上,我已经遇到过这个问题很多次,这让我非常沮丧。
我想做的是拥有这样的代码:
node = document.createElement("option");
textbox = document.createTextNode(currentday.getFullYear() + i);
node.value = currentday.getFullYear() + i;
node.appendChild(textbox);
document.getElementById("pick_up_year").appendChild(node);
document.getElementById("return_year").appendChild(node);
但是这段代码只将节点附加到return_year(显然是一个select元素)。
如果我重复这样的代码,它会起作用:
node = document.createElement("option");
textbox = document.createTextNode(currentday.getFullYear() + i);
node.value = currentday.getFullYear() + i;
node.appendChild(textbox);
document.getElementById("pick_up_year").appendChild(node);
node = document.createElement("option");
textbox = document.createTextNode(currentday.getFullYear() + i);
node.value = currentday.getFullYear() + i;
node.appendChild(textbox);
document.getElementById("return_year").appendChild(node);
但这不是很优雅,是吗?为什么我被迫重用代码并且有一个简单的方法呢?
HTML基本上是这样的:
<select id="pick_up_days" name="pick_up_day">
<option value="nojs">Please enable JavaScript</option>
</select>
<select id="pick_up_year" name="pick_up_year">
<option value="nojs">Please enable JavaScript</option>
</select>
答案 0 :(得分:1)
您可以尝试使用cloneNode
document.getElementById("pick_up_year").appendChild(node);
document.getElementById("return_year").appendChild(node.cloneNode(true));