所以我动态创建了共享同一个类的复选框:
<input type="checkbox" class="boxes" />
<input type="checkbox" class="boxes" />
还有一些共享相同类的下拉选项:
<select class = "needToDisable">
<option value="volvo">Volvo</option>
</select>
由于这些是动态生成的,我采用这种方法检查选中复选框的长度是否为&gt; 0.如果是,请禁用所有下拉列表&#34; needToDisable&#34;
$(".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
但它说&#34;点击&#34;没有定义,我不认为我可以这样使用。
答案 0 :(得分:2)
首先,您需要使用'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>