0

私はどちらかを持っています

1)<input type="checkbox">同じ名前の複数のタグ

2)<input type="radio">同名のタグ

2) 同じ名前のラジオ ボタンは 1 つのボタンしかクリックできないため、簡単なケースです。

問題はケース 1) です。これが私が思いついたものです:

$('input[type="checkbox"]').click( function() {
  var value = $(this).val();
  alert(value);
});

これにより、valueアイテムが 1 つだけ格納されます。ユーザーが同じチェックボックスで複数の項目をチェックした場合、それらを取得するにはどうすればよいですか?

4

3 に答える 3

1

次を試してください

$('input[type="checkbox"]').click( function() {
    stack = [];
    $('input[type="checkbox"]').each(function(){

        if($(this).is(':checked')){
            stack.push($(this).val())
        }
    })
    console.log(stack)
});

デモ

于 2013-02-12T10:53:00.350 に答える
0

次のようにチェック値を取得できます。

HTML :

<input type="checkbox" name="checkboxes" checked="checked" title="1" value="1" />
<input type="checkbox" name="checkboxes" title="2" value="2"/>
<input type="checkbox" name="checkboxes" checked="checked" title="3" value="3"/>
<input type="checkbox" name="checkboxes" title="4" value="4"/>

脚本:

var val = []
$("input[name='checkboxes']:checked").each(function(i){
      val[i] = $(this).val();
});

console.log(val);

これが実際のデモです: http://jsfiddle.net/56XTZ/

于 2013-02-12T11:00:53.437 に答える
0

jquery :checkboxを使用すると、checkbox タイプのすべての要素が選択されます。:checkedは、チェックされたチェックボックスが選択されます。これを組み合わせてループを使用して値を取得できます...

これを試して

$(':checkbox').click( function() {
   var val = [];
    $(':checkbox:checked').each(function(i){
      val[i] = $(this).val();
    });

   console.log(val);
});

ここでフィドル

于 2013-02-12T10:54:07.540 に答える