【问题标题】:Disable inputs by class when checkbox selected选中复选框时按类禁用输入
【发布时间】:2018-01-09 10:26:08
【问题描述】:

所以我动态创建了共享同一个类的复选框:

<input type="checkbox" class="boxes" />
<input type="checkbox" class="boxes" />

还有一些下拉选项共享同一个类:

<select class = "needToDisable">
  <option value="volvo">Volvo</option>
</select>

由于这些是动态生成的,我采用这种方法来检查选中复选框的长度是否 > 0。如果是这样,请禁用所有带有“needToDisable”类的下拉菜单

 $(".boxes").on('click',function(){
      if ($('.boxes:checked').length > 0) {
            $(".boxes").prop("disabled", true);
       } else {
         $(".boxes").prop("disabled", false);  
       }     
  });

我还见过一些其他的例子,比如:

Using jquery to get all checked checkboxes with a certain class name

但它说“点击”没有定义,我不认为我可以这样使用。

【问题讨论】:

  • 错字 - click 而不是 'click'

标签: javascript jquery html


【解决方案1】:

首先,您需要使用'click' 而不是click。其次,你的选择类是needToDisable,需要禁用而不是.boxes。下面是一个小的工作演示:

$(".boxes").on('click', function() {
  $(".needToDisable").prop("disabled", $('.boxes:checked').length);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" class="boxes" />
<input type="checkbox" class="boxes" />

<select class="needToDisable">
  <option value="volvo">Volvo</option>
</select>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-12
    • 2022-01-08
    • 1970-01-01
    • 2014-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多