3

ページに 1 つのフォームがあり、そのフォーム内にテーブルのすべての行にチェック ボックスがあります。チェックされた行がある行の数を数える必要がありますが、jQuery からそれを選択することさえ困難です。

チェックボックスのコードは次のようになります。

<input type="checkbox" id="onHomePage_56" name="onHomePage" 
    value="56" checked="checked">

チェックされていないボックスには、checked="checked" がありません。

4

4 に答える 4

7
var q = $('form#id-of-form').find('input:checked').length;

http://api.jquery.com/checked-selector/

フォームにカウントしたくないチェックボックスがある場合は、カウントしたいチェックボックスにクラスを追加し、代わりにそれらを選択します。

var q = $('form#id-of-form').find('input.count-these:checked').length;
于 2012-05-01T18:03:02.643 に答える
2

jQuery には、このための特別なセレクターが用意されています。

$('input:checked').length

すなわち:

var num = $('#myform input:checkbox:checked').length;

ラジオボタンにも適用されるため、jQuery:checkboxセレクターを追加しました。:checked技術的に:checkboxは、最新のブラウザーよりも遅くなり[type=checkbox]ますが、同じことを行います。

var num = $('#myform input[type=checkbox]:checked').length;
于 2012-05-01T18:02:54.733 に答える
1

あなたはこれを試すことができます:

$('#form input:checkbox:checked').length;
于 2012-05-01T18:08:50.377 に答える
-1
$('#myForm table tr td input:checked')​.size();​

デモ。

更新:typeラジオボタンもチェックできたので、フィルタリングしたほうがよい

$('#myForm table tr td input[type="checkbox"]:checked').size();

ラジオボタンをチェックしたデモ

于 2012-05-01T18:10:55.303 に答える