ネストされたテーブルがあり、内側のテーブルと外側のテーブルの両方に行が動的に追加されています。内部テーブルの更新をトリガーすると、内部テーブルの順序が変更された後、外部テーブルの順序も変更されます。これを示すためにjsfiddleを作成しました。
これはOSの質問から分岐したものです。ネストされたjQueryTablesorterテーブル、すべて並べ替え可能
問題を確認するには、トヨタが一番上になるように外側のテーブルをMakeで並べ替えてから、[更新]ボタンをクリックします。更新ボタンは、内側のトヨタテーブルの更新をトリガーしますが、外側のテーブルも並べ替えて、ToyotaDoors列の並べ替え方向を反映します。
外部テーブルも並べ替えずに行を追加した後、内部テーブルを並べ替えるにはどうすればよいですか?
<script type="text/javascript">
function updateRW() {
$("#toyota").trigger("update", [true]);
}
</script>
<table class="tablesorter">
<thead>
<tr>
<th>Make</th>
<th>Model</th>
</tr>
</thead>
<tbody>
<tr>
<td>Honda</td>
<td>Accord</td>
</tr>
<tr class="tablesorter-childRow">
<td colspan="2" style="padding: 0 30px 0 30px;">
<table class="tablesorter-child">
<thead>
<tr>
<th>Doors</th>
<th>Colors</th>
</tr>
</thead>
<tbody>
<tr>
<td>Honda 2-Door</td>
<td>Honda Red</td>
</tr>
<tr>
<td>Honda 4-Door</td>
<td>Honda Blue</td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td>Toyota</td>
<td>Camry</td>
</tr>
<tr class="tablesorter-childRow">
<td colspan="2" style="padding: 0 30px 0 30px;">
<table id="toyota" class="tablesorter-child">
<thead>
<tr>
<th>Doors</th>
<th>Colors</th>
</tr>
</thead>
<tbody>
<tr>
<td>Toyota 2-Door</td>
<td>Toyota Yellow</td>
</tr>
<tr>
<td>Toyota 4-Door</td>
<td>Toyota Green</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<input type=button value="update" onclick="updateRW()">
$(document).ready(function()
{
$("table").tablesorter({selectorHeaders: '> thead > tr > th'});
});