![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
js动态添加下拉列表
一个有值的列表添加到空列表用onchange事件不可有重复的列表选项添加值已经完成目前重复不能实现求大神<body><formaction=""method="get">...
一个有值的列表添加到空列表 用onchange事件 不可有重复的列表选项
添加值已经完成 目前重复不能实现 求大神
<body>
<form action="" method="get">
<select name="s1" id="s1" onchange="zj()">
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
</select>
<select name="s3" id="s3"></select>
</form>
</body>
<script>
function zj(){
var s1=document.getElementById("s1")
var s3=document.getElementById("s3")
var sc=document.createElement("option")
var st=document.createTextNode(s1.options[s1.selectedIndex].text);
sc.appendChild(st);
s3.appendChild(sc);
}
</script> 展开
添加值已经完成 目前重复不能实现 求大神
<body>
<form action="" method="get">
<select name="s1" id="s1" onchange="zj()">
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
</select>
<select name="s3" id="s3"></select>
</form>
</body>
<script>
function zj(){
var s1=document.getElementById("s1")
var s3=document.getElementById("s3")
var sc=document.createElement("option")
var st=document.createTextNode(s1.options[s1.selectedIndex].text);
sc.appendChild(st);
s3.appendChild(sc);
}
</script> 展开
2个回答
展开全部
function zj(){
var s1=document.getElementById("s1");
var s3=document.getElementById("s3");
for(var i=0;i<s1.options.length;i++){
if(s1.options[i].selected){
var e = s1.options[i];
s3.options.add(new Option(e.text, e.value));
s1.remove(i);
i=i-1
}
}
}
//用以上写法也可。建议select中加属性 multiple(感觉用的舒服点)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把JS里的代码改成这样:
function zj(){
var s1=document.getElementById("s1")
var s3=document.getElementById("s3")
var sc=document.createElement("option")
var txt = s1.options[s1.selectedIndex].text;
var isC = true;
for(var i=0;i<s3.options.length;i++){
if(txt == s3.options[i].text){
isC = false;
break;
}
}
if(isC){
var st=document.createTextNode(s1.options[s1.selectedIndex].text);
sc.appendChild(st);
s3.appendChild(sc);
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询