[英]Count how many checkbox have been checked
我正在使用以下代碼來檢查多少個復選框用戶已選中。
var empty_watch = $('#clocks').find('input.checkbox:checked').length;
這在表單驗證中使用:如果empty_watch為0,則不發布表單:用戶必須至少選擇一項(並且沒有默認項)。
HTML如下:
<div id="clocks" class="sez-form">
<fieldset>
<legend> Orologi inclusi </legend>
<div class="percheckbox">
<input class="clock" type="checkbox" value="1" name="orologio">Browser
</div>
<div class="percheckbox">
<input class="clock" type="checkbox" value="2" name="orologio">Prototipo1
</div>
<div class="percheckbox">
<input class="clock" type="checkbox" value="3" name="orologio">test FP
</div>
<br style="clear: both;">
</fieldset>
</div>
即使我選中所有復選框,empty_watch仍為0。我在做什么錯?
您的查找選擇器:
'input.checkbox:checked'
查找帶有“復選框”類的輸入。 您應該查看元素的'type'屬性。
而是嘗試:
'input[type="checkbox"]:checked'
有一個特定的:checkbox
偽選擇器。 它與input[type=checkbox]
:
var empty_watch = $('#clocks').find(':checkbox:checked').length;
正如您已經將#clock
作為目標,然后發現,這在速度方面也是相當不錯的。
如果您知道沒有其他可檢查的輸入, 則可以將其略微減少至以下內容:
var empty_watch = $('#clocks').find(':checked').length;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.