我的jQuery函数有问题。我希望基于一个选定的选项来禁用其他选择。在我的情况下,如果选择了选项1中的选项1,我想禁用select2。所以我使用这个jQuery函数:
$(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');
}
})
这也不会起作用:/
答案 0 :(得分:5)
听起来你想在启动时触发'更改'事件。
$('.select1').trigger('change');
所以,
$(document).ready(function(e) {
$('.select1').change(function(e) {
if ($('.select1').val()==1){
$('.select2').attr('disabled','disabled');
}
else{
$('.select2').removeAttr('disabled');
}
});
$('.select1').trigger('change');
});
答案 1 :(得分:1)
几乎相同的代码。
$(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');
} }