如何检查而不点击选中页面上至少一个选定复选框的按钮?谢谢!
<script>
$('#filter').find('input[type="checkbox"]').each( function(){
if ($('input[type="checkbox"]').is(":checked")){
$('#status').text("yes");
}
else {
$('#status').text("no");
}
});
</script>
<div id="filter">
<input id='id1' type='checkbox' />
<input id='id1' type='checkbox' />
<input id='id1' type='checkbox' />
</div>
<label id='status' />
答案 0 :(得分:1)
首先从HTML中的div id中删除#。
还要考虑使复选框ID唯一。
要检查是否选中了任何复选框,您可以通过以下代码获取。
$(document).ready(function(){
function updateStatus(){
if ($('div#filter input:checked').length > 0 ){
$('#status').text("yes");
}
else {
$('#status').text("no");
}
}
$('div#filter input[type="checkbox"]').on("change",updateStatus);
updateStatus();
});
不了解您的使用案例,但您也可以在每1秒钟后(或根据要求)调用该功能,如下所示。
$(document).ready(function(){
function updateStatus(){
if ($('div#filter input:checked').length > 0 ){
$('#status').text("yes");
}
else {
$('#status').text("no");
}
}
window.setInterval(updateStatus, 1000);
});
答案 1 :(得分:0)
使用.length
$('input[type="checkbox"]:checked').length !== 0
演示
$(document).ready(function(){
if($('#filter input[type="checkbox"]:checked').length !== 0){
alert('one or more checked');
}else{
alert('Nothing checked');
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="filter">
<input id='id1' type='checkbox' />
<input id='id1' type='checkbox' />
<input id='id1' type='checkbox' />
</div>