2

我是 jquery 的新手,我在解决这个问题时遇到了麻烦。我有 drop_down_list1 有 6 个值。如果用户选择值 1 或 2,将删除 drop_down_list2 中的值。如果用户从 drop_down_list1 中选择值 3、4、5 或 6,则只能从 drop_down_list2 中选择值 5。

有人告诉我,我的逻辑就在那里,但语法不正确。有人可以帮助我吗?谢谢!

$(function () {

        $("#drop_down_list1").change(function (){
            var select = $("#drop_down_list1").val();  
            if (select == '1', '2') {          
                $("#drop_down_list2").find("option[value='5']").remove();
            }
            else if (select == '3', '4', '5', '6') {
                $("drop_down_list2").find("option[value='1','2','3','4',]").remove();
            }
            else {
                $("#drop_down_list2").find("option[value='5']").append();
            }
        })
    });
4

1 回答 1

2

两个更正。

1.编辑您的条件

您的 if 条件中存在语法错误

if (select == '1', '2') 

应该

if (select == '1' || select == '2') 

2.用多个条件编辑你的查找选择器

在查找中具有多个条件的 Jquery 选择器下方将不起作用

 $("drop_down_list2").find("option[value='1','2','3','4']").remove();

也许你可以试试

 $("drop_down_list2").find("option[value!='5']").remove();

这将是相同的效果

更新

为了在 find 中选择多个选项,您也可以使用

$("drop_down_list2").find("option[value='1'], option[value='2'], option[value='3'], option[value='4']").remove();
于 2013-09-27T19:56:13.787 回答