2012-02-06 6 views
-1

私はたくさんのチェックボックス(すべて同じクラス)を取得し、すべての属性名を取得し、すべてのチェックボックスを配列にプッシュします(チェックボックスがオフになっている場合は配列からも削除します)。アレイに複数のチェックボックス名を投稿するにはどうすればよいですか?

最終的には、チェックされたものの配列をajax経由で渡したいと思っています。ボックスがチェック/チェック解除されるたびにajaxがリフレッシュされます。

どうすればいいですか?

+0

@zerkms彼はそれを試してみたら、彼が投稿しただろうと推測しました;) –

+3

Vivek:何人かの人が試してみる人もいます。試してみてください。私は彼らが立ち往生しても、試してみる人が好きです。 –

+0

@Vivek Chandra:クラスごとにオブジェクトを選択することは非常に基本的なことです。あなたがそれを行うことができない場合 - あなたは文字通りjQueryについて何も知らない – zerkms

答えて

1

使用$.mapを試してみてください。

var names = $('.theClassName').map(function() { 
    return this.name; 
}); 

質問の第2部分です。

checkedのみを取得するには、$('.theClassName:checked')を使用してください。このために配列を維持する必要はありません。

+0

私はまだ地図機能を使ったことはありませんが、私は必要なものすべてを行うかどうかはわかりません。私はもう少し詳しく質問を更新します。 – adamzwakk

+0

@adamzwakk:それがあなたが探していたものではない、あるいはそれがあなたが探していたものではないことを絶対に確かめるためにドキュメンテーションを読んでみませんか? – zerkms

0

配列内のチェックボックスのすべての名前を取得するには、次の

var names = []; 
$('.theClassName').each(function() { 
    var name = $(this).attr('name'); 
    names.push(name); 
}); 
0
var names = $('input.class_name:checked').map(function { 
    return $(this).attr('name'); 
}) 

は、チェックボックスのチェックボックスの名前で配列を入力します。

+0

**そのようなセレクタで**本当の**理由: 'class^=" class_name "'? – zerkms

+0

彼は同じクラス名 –

+0

のチェックボックスをすべて同じにしたいと言っていました。同じ名前です!= '同じ部分文字列で始まります。あなたのルールは 'class_name2'クラスのチェックボックスともマッチしますが、これは予期せぬものです。あなたのケースのための同じ名前の基準は 'input.class_name:checked'でした。 – zerkms

関連する問題