当我选择/取消选择selectAll复选框时,我希望选中或取消选中所有其他复选框。
没有子元素或父元素
Html代码:
<div>
<li class="input">
<input type="checkbox" name="selectAll" value=""></input>
</li>
<li class="input">
<input type="checkbox" name="practice" value=""></input>
</li>
<li class="input">
<input type="checkbox" name="filename" value=""></input>
</li>
<li class="input">
<input type="checkbox" name="comment" value=""></input>
</li>
</div>
这是我到目前为止试图做的事情 -
$(this).siblings('ul').find("input[type='checkbox']").prop('checked', true);
和
$(this).parent().find('input:checkbox:first').prop('checked', true);
答案 0 :(得分:6)
你走了。
<强>标记强>:
<div>
<li class="input">
<input type="checkbox" id="select-all" name="selectAll" value=""/>
</li>
<li class="input">
<input type="checkbox" name="practice" value=""/>
</li>
<li class="input">
<input type="checkbox" name="filename" value=""/>
</li>
<li class="input">
<input type="checkbox" name="comment" value=""/>
</li>
</div>
<强>代码强>:
$("#select-all").on("click", function() {
var all = $(this);
$('input:checkbox').each(function() {
$(this).prop("checked", all.prop("checked"));
});
});
答案 1 :(得分:3)
<强> HTML 强>
<div>
<li class="input">
<input type="checkbox" class="select-all" name="selectAll" value=""></input>
</li>
<li class="input">
<input type="checkbox" class="item-checkbox" name="practice" value=""></input>
</li>
<li class="input">
<input type="checkbox" class="item-checkbox" name="filename" value=""></input>
</li>
<li class="input">
<input type="checkbox" class="item-checkbox" name="comment" value=""></input>
</li>
</div>
<强> Jquery的强>
$(".select-all").on("click", function() {
$(".item-checkbox").prop("checked", $(this).prop("checked"));
});
OR(如果由于某种原因你不能指派一个班级)
$("input[name=selectAll]").on("click", function() {
$("input:checkbox").prop("checked", $(this).prop("checked"));
});
OR(如果您只想要在DOM中处于类似级别的复选框
$("input[name=selectAll]").on("click", function() {
$(this).closest("div").find("input:checkbox").prop("checked", $(this).prop("checked"));
});