次のパターンで動的に作成されるチェックボックスが約20個あります。
<input type="checkbox" id="cb01" name="vehicle" />
cb + indexのIDと、データベースエントリに対応するname属性を指定します。
さて、私の質問に移りましょう。
チェックボックスをパフォーマンス的にループするための最良の方法は何ですか?チェックボックスの名前と値の両方を送信する必要があります。
私はjsonstringとしてデータを好むでしょう。
次のパターンで動的に作成されるチェックボックスが約20個あります。
<input type="checkbox" id="cb01" name="vehicle" />
cb + indexのIDと、データベースエントリに対応するname属性を指定します。
さて、私の質問に移りましょう。
チェックボックスをパフォーマンス的にループするための最良の方法は何ですか?チェックボックスの名前と値の両方を送信する必要があります。
私はjsonstringとしてデータを好むでしょう。
まず、私は彼ら全員に共通のクラスを与えます。としましょうcb
。
それで:
var json = {};
var checkboxes = document.querySelectorAll('.cb');
for ( var i = 0, l = checkboxes.length; i < l; i++ )
json[ checkboxes[i].name ] = checkboxes[i].checked;
またはjQueryを使用する場合:
var json = {};
$('.cb').each(function(){
json[ this.name ] = this.checked;
});