根据所选选项禁用复选框(jquery)

时间:2015-05-11 10:53:24

标签: javascript jquery

我正在编写一个jquery代码,其目的是禁用/启用一组复选框。到目前为止我得到了: HTML:

$("#Units").on("change", function() {
    if ($(this).val() !== "Finance") {
    $(".dissable").attr("disabled", "disabled");

} else {
    $(".dissable").removeAttr("disabled");
}
});

JS

.heads

但它在页面加载时无法正常工作。只有在更改所选选项后,复选框才会生效。如何改进这个以便在页面加载时捕获选定的值并启用/禁用具有适当类的checbox?

3 个答案:

答案 0 :(得分:1)

$(".dissable").attr("disabled", "disabled");
$("#Units").on("change", function() {
    if ($(this).val() !== "Finance") {

    $(".dissable").attr("disabled", "disabled");
} else {
    $(".dissable").removeAttr("disabled");
}
});

演示:http://jsfiddle.net/zgn2o40a/1/

答案 1 :(得分:0)

试试这个:

$("#Units").on("change", function () {
    if ($(this).val() !== "Finance") {
        $(".dissable").prop("disabled", true); // Use prop instead of attr

    } else {
        $(".dissable").prop("disabled", false);
    }
}).trigger('change');
// ^
// This will call function immedietly

答案 2 :(得分:0)

您可以在使用.change().trigger('change')定义事件后触发更改事件:

$("#Units").on("change", function() {
   //rest code
}).change();

<强> Working Demo