「すべてを選択」チェックボックスがあるテーブルがあります。この表にデータを入力すると、以前に選択されたすべての項目がチェックされます。現在、「すべて選択」チェックボックスは、すべての項目がチェックされていない場合でもチェックされます。私は各チェックボックスを反復処理する関数を作成しようとしていますが、すべてがチェックされていれば、自動的にselect allチェックボックスが切り替わります。すべての項目が選択されていなければ同じロジック - すべて選択チェックボックスは選択されません。チェックボックス配列を繰り返しチェックするかどうかを確認する
ここで私がこれまで持っているコードです:
function unclickSelectAll(parent) {
var $checkboxes = parent.find('input[type="checkbox"]');
var $selectAllCheckbox = $checkboxes.filter('.vendor');
var $invoiceCheckBoxes = $checkboxes.filter('.invoice');
$invoiceCheckBoxes.each(function(i, c) {
var checkbox = $(this);
if (checkbox[i].checked) {
$selectAllCheckbox.prop('checked', true);
} else {
$selectAllCheckbox.prop('checked', false);
}
});
};
何現在起こることは、それが最初のチェックボックスをループすることであり、それがチェックされます場合は、それが真の選択すべてのチェックボックスのcheckedプロパティを変更しますが、 。次のループを通して、チェックボックス[i]の 'checked'プロパティが見つからないというエラーが出ます。
becuaseチェックボックスが – epascarello
ちょうど ''(this.checked)場合を使用して...配列ではありません。 – Barmar
あなたのJSで繰り返しているhtmlはどこですか? –