0

非常に多くのチェックボックスを含む動的フォームを作成しています。フォームが複雑なため、通常のフォーム送信は適切ではありません。また、フォームは一度に複数のユーザーに有効であることを意図しているため、シリアル化する前に、フォームの値を抽出して JavaScript オブジェクトに格納しています。それらは、サーバー側で送信および処理されるバルク データとして扱われます。

これは今のところうまく機能していますが、チェックボックスの入力で問題が発生しました。チェックされていなくても、チェックボックスが実際にチェックされているかどうかに関係なく、それらのvalue属性は常に返されます。$('input[name=checkbox_name]').val();

これまでのところ、次の方法でこれを修正しようとしました。

  • onデフォルト( )以外の値を追加する
  • 属性を追加しcheckedますが、どの値が有効でどれが無効かは完全にはわかりません。たとえば、Google Chrome のコンソールでchecked="checked"、ボックスをリアルタイムでチェックする必要がある属性/値を追加しましたが、そうではありませんでした
  • http://bit.ly/MLxChtに従って、チェックボックス入力の直前にnameチェックボックスと同じ属性を持つ非表示の入力要素を配置するvalue=0

チェックボックスの現在の値(チェックされていない/チェックされている)を抽出する方法を詳しく説明した回答は、非常に高く評価されます。

4

4 に答える 4

0
$('input[name=checkbox_name]').prop('checked')

(簡潔にするためにも使用できますが.is(':checked')、遅くなります。)

于 2012-07-28T14:01:06.503 に答える
0

試す:

$('input[name=your_name]').is(':checked');

実際にチェックされているかどうかの値を取得するには

于 2012-07-28T14:01:56.253 に答える
0

これを試して

$(...).is(":checked")

また

$(...).attr('checked')
于 2012-07-28T14:02:55.830 に答える
0

他の人が提案していることの代わりに、単に:

$('input[name=your_name]:checked')
于 2012-07-28T14:07:51.213 に答える