2015-04-01 68 views
0

我檢查類似問題的其他答案,所以要麼這個問題:

需要選擇所有輸入:複選框,從形式,但他的識別ID。

我嘗試使用:$("input:checkbox[id^='ingr_']")並運行完美的「檢查」元素。所以未檢查的元素,jquery說使用:not(:checked)。把這個放在代碼上,然後獲取任何東西(選中或不選中)。

這是小提琴運行我的示例代碼:JsFiddlejQuery選擇輸入:複選框選中,並與ID

+0

這個'$(「input [id^='ingr _']:複選框」)' – Turtle 2015-04-01 22:57:36

回答

1

我認爲來自serializeArray()方法的問題。 它刪除未選中的複選框。

https://api.jquery.com/serializeArray/

如果你做的 $ ('input:checkbox[id^='comp_']:not(:checked)')一個的console.log,它工作得很好。

+0

感謝,efectively序列化刪除未經檢查的字段。如何模擬serializeArray來使用這個選擇? – Mastercafe 2015-04-02 16:07:13

+0

該解決方案簡單地消除了serializeArray,因爲下一行使用選擇器構造字符串 – Mastercafe 2015-04-02 16:18:47

+0

是,完全:) – 2015-04-02 16:21:14

0

此代碼將計算所有選中的複選框:

var countUnChecked = function() { 
    var n = $('input:checkbox:not(":checked")').length 
    alert(n + " Unchecked."); 
};