私のASP.NET MVC 5アプリケーションのビューでは、2つのテーブルがあり、テーブルの各行には動的に生成されるチェックボックスがあります。jQuery - 2つの異なるテーブルのすべてのチェックボックスをオフ/チェックボックス
両方のテーブルにすべてチェック/すべてチェック解除機能を追加しようとしています。
<table class="table" id="hostsTable">
<thead>
<tr>
<th>FQ</th>
<th>Name</th>
<th>Select?</th>
</tr>
</thead>
<tr>
<td>
VISIBLE FQ VALUE
</td>
<td>
VISIBLE NAME
</td>
<td>
<input Style="vertical-align:3px}" data-val="true" data-val-required="The Checked field is required." id="Hosts_0__Checked" name="Hosts[0].Checked" type="checkbox" value="true" /><input name="Hosts[0].Checked" type="hidden" value="false" />
</td>
</tr>
</table>
テーブルの両方の構造は同じであり、第二の1のIDが countersTableです後、私のjQuery:関連するHTMLコードを次に示し
<input id="ALL" class="CheckAll" type="checkbox" value="All" /><b>Select/Unselect All</b>
<input id="ALLt2" class="CheckAllt2" type="checkbox" value="All" /><b>Select/Unselect All</b>
:後
は2つのチェックボックスです:
$('.CheckAll').on('change', function() {
$(this).parent().parent().find('input[type=checkbox]').prop('checked', this.checked);
});
//$('table tr input:checkbox:not(".CheckAll")').on('change', function() {
$('#hostsTable tr input:checkbox:not(".CheckAll")').on('change', function() {
if (!this.checked) {
$(this).parent().parent().find('.CheckAll').prop('checked', false);
}
var flag = true;
$(this).parent().parent().children().find('input[type=checkbox]:not(.CheckAll)').each(function() {
if (!this.checked) {
flag = false;
}
});
if (flag) {
$(this).parent().parent().find('.CheckAll').prop('checked', true);
}
});
$('.CheckAllt2').on('change', function() {
$(this).parent().parent().find('input[type=checkbox]').prop('checked', this.checked);
});
//$('table tr input:checkbox:not(".CheckAll")').on('change', function() {
$('#countersTable tr input:checkbox:not(".CheckAllt2")').on('change', function() {
if (!this.checked) {
$(this).parent().parent().find('.CheckAllt2').prop('checked', false);
}
var flag = true;
$(this).parent().parent().children().find('input[type=checkbox]:not(.CheckAllt2)').each(function() {
if (!this.checked) {
flag = false;
}
});
if (flag) {
$(this).parent().parent().find('.CheckAllt2').prop('checked', true);
}
});
Selec t/Unselect Allチェックボックスをオンにすると、両方のテーブルのチェックボックスにChecked/Uncheckedが表示されます。
どのようにこれをそれぞれのテーブルに制限できますか?
おかげでアドバンス
関連するHTMLをいくつか追加できますか? – Thijs
使用しているHTML構造体を貼り付けることができます.. –
テーブルのHTML構造を更新しました – Tango