javascript问题:获取左边select的option添加到右边的select后,左边的元素被移除了?怎么会这样?
当选中左边元素后,点击按钮触发事件后,右边的select增加了元素,但是为什么左边的select中的元素会减少呢?我并没有移除左边select中的元素啊代码:...
当选中左边元素后,点击按钮触发事件后,右边的select增加了元素,但是为什么左边的select中的元素会减少呢?我并没有移除左边select中的元素啊
代码: 展开
代码: 展开
展开全部
这种情况是正确的
当 appChild() 方法的参数是一个文档中已存在的元素时,相当于移动了这个元素
如果要复制这个元素应使用 cloneNode() 方法
如果要同时复制子元素应使用参数 cloneNode(true)
<html>
<head>
<style type="text/css">
#red{width:100%;height:100px;border:1px solid #F00;margin:10px auto;}
#blue{width:100%;height:100px;border:1px solid #00F;}
</style>
</head>
<body>
<div id="red">
<p id="p_test">This is a paragraph</p>
</div>
<div id="blue">
</div>
<button id="btn1">append</button>
<button id="btn2">clone</button>
<script type="text/javascript">
window.onload = function(){
document.getElementById("btn1").onclick = function(){
var oldobj = document.getElementById("p_test");
document.getElementById("blue").appendChild(oldobj);
}
document.getElementById("btn2").onclick = function(){
var newobj = document.getElementById("p_test").cloneNode(true);
document.getElementById("blue").appendChild(newobj);
}
}
</script>
</body>
</html>
当 appChild() 方法的参数是一个文档中已存在的元素时,相当于移动了这个元素
如果要复制这个元素应使用 cloneNode() 方法
如果要同时复制子元素应使用参数 cloneNode(true)
<html>
<head>
<style type="text/css">
#red{width:100%;height:100px;border:1px solid #F00;margin:10px auto;}
#blue{width:100%;height:100px;border:1px solid #00F;}
</style>
</head>
<body>
<div id="red">
<p id="p_test">This is a paragraph</p>
</div>
<div id="blue">
</div>
<button id="btn1">append</button>
<button id="btn2">clone</button>
<script type="text/javascript">
window.onload = function(){
document.getElementById("btn1").onclick = function(){
var oldobj = document.getElementById("p_test");
document.getElementById("blue").appendChild(oldobj);
}
document.getElementById("btn2").onclick = function(){
var newobj = document.getElementById("p_test").cloneNode(true);
document.getElementById("blue").appendChild(newobj);
}
}
</script>
</body>
</html>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询