【问题标题】:How to disable / enable checkbox base on select (option) value [closed]如何根据选择(选项)值禁用/启用复选框[关闭]
【发布时间】:2014-12-04 14:58:17
【问题描述】:

我想知道如何根据选项值禁用和启用复选框: 这是我的代码:

<select id="typeofworkday">
   <option value="lavorato" id="lavorato" name="lavorato"> lavorato </option>
   <option value="ferie" id="ferie" name="ferie"> ferie </option>
   <option value="malattia" id="malattia" name="malattia"> malattia </option>

<input type="checkbox" name="permesso" id="check1"  disabled="disabled" onclick="check();"> Permesso

如果用户选择(lavorato)复选框==启用否则禁用。

【问题讨论】:

  • 哪一部分你不知道怎么做?你被困在哪里了?展示你目前拥有的东西。

标签: javascript jquery checkbox


【解决方案1】:

试试这个,

$('#typeofworkday').on('change', function() {
    if ($(this).val() === 'lavorato') {
        $('#check1').prop("disabled", false);
    } else {
        $('#check1').prop("disabled", true);
    }
});

【讨论】:

  • 请注意...如果您只使用相等比较的结果作为.prop() 的第二个参数,您的代码会更简洁。 (虽然它需要是一个“不相等”的比较。) $('#check1').prop("disabled", $(this).val() !== 'lavorato')
【解决方案2】:

您所要做的就是聆听选择并在它发生变化时做出反应。

// Listen to the change of the <select> element
$("#typeofworkday").on("change", function() {
    // Check the option value for "ferie" and disable the checkbox
    if ($(this).val() === "ferie") {
        $("#check1").attr("disabled", "disabled");

    // For all other options, enable the checkbox
    } else {
        $("#check1").removeAttr("disabled");
    }
});

Here's a JSFiddle of it working

【讨论】:

  • 感谢它的工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多