代码之家  ›  专栏  ›  技术社区  ›  Muiter

正在从复选框中删除“禁用”[重复]

  •  -2
  • Muiter  · 技术社区  · 6 年前

    disabled

    <div class="checkbox">
      <label>
        <input type="checkbox" id="email_user" name="email_user" data-toggle="toggle" data-size="small" data-on="Ja" data-off="Nee" onclick="remove_disabled()">
        Verstuur melding ook per e-mail naar collega.
      </label>
    </div>
    <div class="checkbox">
      <label>
        <input type="checkbox" id="email_relatie" name="email_relatie" data-toggle="toggle" data-size="small" data-on="Ja" data-off="Nee" disabled>
        Verstuur een kopie van deze melding naar de relatie.
      </label>
    </div>
    

    <script type="text/javascript">
    function remove_disabled() {
        document.getElementById('email_relatie').disabled = false;
    }
    </script>
    

    <script type="text/javascript">
    function remove_disabled() {
        document.getElementById('email_relatie').removeAttr('disabled')
    }
    </script>
    
    5 回复  |  直到 6 年前
        1
  •  1
  •   Luca Kiebel    6 年前

    为了我, document.getElementById("email_relatie").disabled = false; 工作很好。只使用 change 处理程序并检查复选框是否选中:

    function remove_disabled() {
      if(document.getElementById("email_user").checked)
        document.getElementById("email_relatie").disabled = false;
      else 
        document.getElementById("email_relatie").disabled = true;
    }
    <div class="checkbox">
      <label>
        <input type="checkbox" id="email_user" name="email_user" data-toggle="toggle" data-size="small" data-on="Ja" data-off="Nee" onchange="remove_disabled()">
        Verstuur melding ook per e-mail naar collega.
      </label>
    </div>
    <div class="checkbox">
      <label>
        <input type="checkbox" id="email_relatie" name="email_relatie" data-toggle="toggle" data-size="small" data-on="Ja" data-off="Nee" disabled>
        Verstuur een kopie van deze melding naar de relatie.
      </label>
    </div>
        2
  •  0
  •   frobinsonj    6 年前

    我猜您希望在取消选中第一个复选框后再次禁用该复选框,否则您的给定代码将起作用。您可以通过在选中第一个复选框时将禁用的属性设置为false,在不选中时设置为true来实现这一点。

    function toggle_disabled() {
        document.getElementById('email_relatie').disabled = !document.getElementById('email_user').checked;
    }
     <label>
        <input type="checkbox" id="email_user" name="email_user" data-toggle="toggle" data-size="small" data-on="Ja" data-off="Nee" onclick="toggle_disabled()">
        Verstuur melding ook per e-mail naar collega.
      </label>
    </div>
    <div class="checkbox">
      <label>
        <input type="checkbox" id="email_relatie" name="email_relatie" data-toggle="toggle" data-size="small" data-on="Ja" data-off="Nee" disabled>
        Verstuur een kopie van deze melding naar de relatie.
      </label>
    </div>
    Option 1
        3
  •  0
  •   Jc CASA    6 年前

    你试过了吗?

    <input type="checkbox" ... disabled="disabled">

    document.getElementById('email_relatie').removeAttr('disabled');

        4
  •  -1
  •   Cryptex Technologies    6 年前

    您可以这样使用:

    $("input[name='email_relatie']").prop("disabled", false);
    
        5
  •  -2
  •   wscourge Kiran Balakrishnan    6 年前

    使用 .prop()

    $("[type='checkbox']").prop("disabled", false);