2017-06-15 91 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>

相關問題