2017-06-15 133 views
0

如何检查而不点击至少一个选中的复选框被选中的按钮?谢谢!检查是否至少有一个复选框被选中,而不点击

<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' /> 

回答

1

首先从HTML股利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); 
}); 
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>

相关问题