用JS来实现select选中值后使其他select为disabled

有3个select默认的选中值是“请选择”如何通过JS实现,如果其中一个更改了选中值,其他2个select为disabled... 有3个select默认的选中值是“请选择”
如何通过JS实现,如果其中一个更改了选中值,其他2个select为disabled
展开
 我来答
缓步莫迟疑C
2012-11-28 · TA获得超过1.1万个赞
知道大有可为答主
回答量:6217
采纳率:73%
帮助的人:6519万
展开全部
简单的写了一段代码,不限于3个,可以是更多个select
<select id="a" onclick="javascript:doit(this);"><option value="请选择">请选择</option><option value="a">a</a></select>
<select id="b" onclick="javascript:doit(this);"><option value="请选择">请选择</option><option value="b">b</a></select>
<select id="c" onclick="javascript:doit(this);"><option value="请选择">请选择</option><option value="c">c</a></select>
<script type="text/javascript">
function doit(o){
var ss=document.getElementsByTagName("select");
if(o.options[o.selectedIndex].value=='请选择'){
for(var i=0;i<ss.length;i++){
ss[i].disabled=false;
}
}else{
for(var i=0;i<ss.length;i++){
if(ss[i]!=o) ss[i].disabled=true;
}
}
}
</script>
追问
谢谢啦!
但是有个问题
如果按照你这样的话,所有的select都会disabled掉。
能否只在a,b,c这3个select里判断呢?
就是:如果 a改变,b,c 为disabled
b改变,a,c 为 disabled
c改变,a,b 为 disabled
追答
function doit(o){
if(o.options[o.selectedIndex].value=='请选择'){
document.getElementById('a').disabled=false;
document.getElementById('b').disabled=false;
document.getElementById('c').disabled=false;
}else{
document.getElementById('a').disabled=true;
document.getElementById('b').disabled=true;
document.getElementById('c').disabled=true;
}
o.disabled=false;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式