html+;javascript:如何在某些条件下禁用dropdownlist中的null选项

html+;javascript:如何在某些条件下禁用dropdownlist中的null选项,javascript,jquery,html,Javascript,Jquery,Html,我有一个html页面和一打dropdownlist 其中之一是 @Html.DropDownListFor(model => model.PrimaryNetworkInt, new SelectList(ViewBag.AvailableNetworks, "ID", "Name"), "Offline") 第二个存储一些其他值,当我将其更改为“AAA”时,我必须在第一个选项中禁用选择空操作(即“脱机”)(如果选择了其他选项,则返回该选项) 选择“逻辑工作正常”: $('#Second

我有一个html页面和一打dropdownlist

其中之一是

@Html.DropDownListFor(model => model.PrimaryNetworkInt, new SelectList(ViewBag.AvailableNetworks, "ID", "Name"), "Offline")
第二个存储一些其他值,当我将其更改为“AAA”时,我必须在第一个选项中禁用选择空操作(即“脱机”)(如果选择了其他选项,则返回该选项)

选择“逻辑工作正常”:

$('#SecondDDList').change(function () { SecondDDListChanged(); });

var SecondDDListChanged() = function(){
    //...
    if ($('#SecondDDList').val()==-1){ //-1 i.e == "AAA" in my example
        //Here i need logic to disable NULL selection
    } else {
        //Here i need enable NULL option
    }
}
有什么更好的方法?可能是这样的:

$("#PrimaryNetworkInt option[value=null]").attr("disabled", "disabled");

有什么建议吗?

您可以使用.show().hide()方法,对于be舒尔,用户可以(或不能)选择该值

$("#PrimaryNetworkInt").change(function() {
    if ($(this).val()==-1){ //-1 i.e == "AAA" in my example
        $("#PrimaryNetworkInt option[value='null']").hide();
    } else {
        $("#PrimaryNetworkInt option[value='null']").show();
    }

});

要禁用特定选项,只需设置其
disabled
属性

var SecondDDListChanged() = function(){
    //...
    if ($('#SecondDDList').val()==-1){ //-1 i.e == "AAA" in my example
        $("#optionId").attr("disabled", "disabled");
    } else {
        $("#optionId").removeAttr("disabled", "disabled");
    }
}
jQuery(function () {
    jQuery('#SecondDDList').find("option").each(function () {
        if (jQuery(this).val() == -1 || jQuery(this).val() == "null" ) {
            jQuery(this).attr("disabled", true);
        }
    });
});