jQuery禁用多个下拉列表不工作

jQuery禁用多个下拉列表不工作,jquery,html,Jquery,Html,我有一个企业的下拉列表来输入他们的工作时间。每天都有一个下拉列表,其ID为小时\日名\打开和小时\日名\关闭。我还有一个复选框将其标记为关闭。如果选中下拉列表,我将使用以下jQuery禁用下拉列表: $("#closed_monday").click( function(){ if($(this).is(':checked')){ $("#hours_monday_open").attr("disabled", true); $("#hours_monda

我有一个企业的下拉列表来输入他们的工作时间。每天都有一个下拉列表,其ID为小时\日名\打开和小时\日名\关闭。我还有一个复选框将其标记为关闭。如果选中下拉列表,我将使用以下jQuery禁用下拉列表:

$("#closed_monday").click( function(){
    if($(this).is(':checked')){
        $("#hours_monday_open").attr("disabled", true);
        $("#hours_monday_closed").attr("disabled", true);
    }else{
        $("#hours_monday_open").attr("disabled", false);
        $("#hours_monday_closed").attr("disabled", false);
    }
});

但是,选中该复选框时,仅禁用/启用开放时间。。。关闭的下拉列表似乎被忽略了。

奇怪的是,正确的属性是
已禁用
,而不是

$("#hours_monday_open").attr("disabled", "disabled");
要启用它,请删除禁用的属性:

$("#hours_monday_open").removeAttribute("disabled");

从jQuery 1.6开始,您可以使用该功能来清除/设置该属性。

奇怪的是,正确的属性是
禁用的
,而不是
真的

$("#hours_monday_open").attr("disabled", "disabled");
    $("#closed_monday").click( function(){
      if($(this).is(':checked')){
        $("#hours_monday_open, #hours_monday_closed").attr("disabled", "disabled");
      }else{
        $("#hours_monday_open, #hours_monday_closed").removeAttribute("disabled");
      }
    });​
要启用它,请删除禁用的属性:

$("#hours_monday_open").removeAttribute("disabled");
自jquery1.6以来,您可以使用该功能来清除/设置此项

    $("#closed_monday").click( function(){
      if($(this).is(':checked')){
        $("#hours_monday_open, #hours_monday_closed").attr("disabled", "disabled");
      }else{
        $("#hours_monday_open, #hours_monday_closed").removeAttribute("disabled");
      }
    });​
这是对.change()和.click()的简单更改,只是错误的事件

这是对.change()和.click()的简单更改,只是错误的事件


如果您使用的是1.7,您可能需要查看prop()方法。+不幸的是,我目前仍坚持使用1.4.2。如果您使用的是1.7,您可能需要查看prop()方法。+不幸的是,我目前仍坚持使用1.4.2