非常に多くのチェックボックスを含む動的フォームを作成しています。フォームが複雑なため、通常のフォーム送信は適切ではありません。また、フォームは一度に複数のユーザーに有効であることを意図しているため、シリアル化する前に、フォームの値を抽出して JavaScript オブジェクトに格納しています。それらは、サーバー側で送信および処理されるバルク データとして扱われます。
これは今のところうまく機能していますが、チェックボックスの入力で問題が発生しました。チェックされていなくても、チェックボックスが実際にチェックされているかどうかに関係なく、それらのvalue
属性は常に返されます。$('input[name=checkbox_name]').val();
これまでのところ、次の方法でこれを修正しようとしました。
on
デフォルト( )以外の値を追加する- 属性を追加し
checked
ますが、どの値が有効でどれが無効かは完全にはわかりません。たとえば、Google Chrome のコンソールでchecked="checked"
、ボックスをリアルタイムでチェックする必要がある属性/値を追加しましたが、そうではありませんでした - http://bit.ly/MLxChtに従って、チェックボックス入力の直前に
name
チェックボックスと同じ属性を持つ非表示の入力要素を配置するvalue=0
チェックボックスの現在の値(チェックされていない/チェックされている)を抽出する方法を詳しく説明した回答は、非常に高く評価されます。