Jquery 如何禁用基于其他选定选项的选择?
我对jQuery函数有一个问题。我想根据一个选定的选项禁用其他选择。在我的例子中,如果选择了select 1中的选项1,我想禁用select2。所以我使用这个jQuery函数:Jquery 如何禁用基于其他选定选项的选择?,jquery,jquery-selectors,option,Jquery,Jquery Selectors,Option,我对jQuery函数有一个问题。我想根据一个选定的选项禁用其他选择。在我的例子中,如果选择了select 1中的选项1,我想禁用select2。所以我使用这个jQuery函数: $(document).ready(function(e) { $('.select1').change(function(e) { if ($('.select1').val()==1){ $('.select2').attr('disabled','disabled'); }
$(document).ready(function(e) {
$('.select1').change(function(e) {
if ($('.select1').val()==1){
$('.select2').attr('disabled','disabled');
}
else{
$('.select2').removeAttr('disabled');
}
})
});
但这只有在我首先选择选项2或从该选择中选择任何其他选项,然后重新选择选项1时才有效。我假设这是因为使用了更改功能。默认情况下,select1设置为选项1时,如何禁用select2
$(document).ready(function(e) {
if ($('.select1').val()==1){
$('.select2').attr('disabled','disabled');
}
else{
$('.select2').removeAttr('disabled');
}
})
这也行不通:/听起来您想在启动时触发“更改”事件
$('.select1').trigger('change');
所以
听起来你想在启动时触发一个“更改”事件
$('.select1').trigger('change');
所以
几乎相同的代码
$(document).ready(function(e) {
change('.select1');
$('.select1').change(function(e) {
change(this);
}) }); function change(sel){
if ($(sel).val()==1){
$('.select2').attr('disabled','disabled');
}
else{
$('.select2').removeAttr('disabled');
} }
几乎相同的代码
$(document).ready(function(e) {
change('.select1');
$('.select1').change(function(e) {
change(this);
}) }); function change(sel){
if ($(sel).val()==1){
$('.select2').attr('disabled','disabled');
}
else{
$('.select2').removeAttr('disabled');
} }
使用而不是.attr。如果已经选择了1,则可以在页面加载时在change函数外部使用脚本来初始化它。我一直在使用该脚本,但在我的页面上,我有一个autocomplete插件,该插件在1.4+jQuery版本上不起作用,并且1.4版本仅支持.prop。如果默认情况下选择了option1,默认情况下,select2应该被禁用,而不是.attr。如果已经选择了1,您可以在页面加载时在change函数之外使用脚本来初始化它。我一直在使用它,但在我的页面上,我有一个autocomplete插件,它在1.4+jQuery版本上不起作用,并且1.4版本不支持.prop,仅限.attr如果默认情况下选择了选项1,则默认Tnx men应禁用select2以实现快速回答,这对我帮助很大:Tnx men以实现快速回答,这对我帮助很大: