Javascript 禁用除0之外的其他下拉列表中的选择选项
所以我有一个剧本,她在很大程度上做了我想做的事,但有三件事是它不做的,我想让它做Javascript 禁用除0之外的其他下拉列表中的选择选项,javascript,jquery,dropdown,Javascript,Jquery,Dropdown,所以我有一个剧本,她在很大程度上做了我想做的事,但有三件事是它不做的,我想让它做 设置为使值为0的“选择”选项始终处于选中状态,并且从不禁用 禁用加载时已选择的所有其他下拉列表中的选择选项,当然值为0的选择选项除外 使用此代码,您可以了解如何禁用列表中的所有选项。。。我不想让它这样做。。。如果您选择了一个选项,并希望为其他下拉列表再次启用它,如果您使用下拉列表,您将看到我所说的内容 非常感谢您的帮助!我对JS/JQuery不太在行 $(文档).ready(函数(){ $(“选择”)。在('ho
$(文档).ready(函数(){
$(“选择”)。在('hover',function()上{
$previousValue=$(this.val();
}).change(函数(){
$(“选择”).not(this.find(选项[value=”+$(this.val()+“])).attr('disabled',true));
$(“选择”).not(this).find(“选项[value=”+$previousValue+“]]).attr('disabled',false);
});
});
$(“#确认表”)。提交(功能(e){
e、 预防默认值();
$(“选择”).find(“选项”).removeAttr(“禁用”);
document.getElementById('confirm-form').submit();
});代码>
--请选择--
1.
2.
3.
4.
5.
6.
7.
8.
9
--请选择--
1.
2.
3.
4.
5.
6.
7.
8.
9
--请选择--
1.
2.
3.
4.
5.
6.
7.
8.
9
--请选择--
1.
2.
3.
4.
5.
6.
7.
8.
9
局部变量previousValue
不应在函数外部工作,除非在两种情况下,返回或作用域,因此您应该捕获它,以便在相邻函数change()
中使用它
//在此处添加您的javascript
$(文档).ready(函数(){
$(“选择”).focus(函数(){
previousValue=$(this.val();
console.log(以前的值);
$(此项)。更改(
函数(){
如果($(this.val()!=“0”){
$(“选择”).not(this).find(选项[value=”+$(this.val()+“])).attr('disabled',true);}
$(“选择”).not(this.find(选项[value=”+previousValue+“]]).attr('disabled',false);
})
});
});代码>
--请选择--
1.
2.
3.
4.
5.
6.
7.
8.
9
--请选择--
1.
2.
3.
4.
5.
6.
7.
8.
9
--请选择--
1.
2.
3.
4.
5.
6.
7.
8.
9
--请选择--
1.
2.
3.
4.
5.
6.
7.
8.
9
你的英语很让人困惑。其他选择应在何时禁用?select1是否影响select2?选择某个选项时,如果该值存在于所有其他选项中,则应禁用该值。因此,如果我在第一个选择中选择选项1(值=1),然后在选择2,3,4中选择选项1(值=1)。。。etc也被禁用,这样说更有意义。