私の MVC アプリケーションにはフォームがあり、2 つの非同期 AJAX 呼び出しを行います。1 つはデータの新しいページを取得するため、もう 1 つは検索結果を表示するためです。これらの呼び出しの前のフォームの初期ロードは問題ありません。行にカラーバーを付けたいのですが、これでうまくいきます。
$("#tblePagedList").on("change", styleRows);
function styleRows() {
$("#tblePagedList tr:even").addClass("row1");
$("#tblePagedList tr:odd").addClass("row2");
}
ただし、これらのスタイルは、新しいページに移動したり、検索を行ったりすると適用されません。変更イベントを接続しようとすると失敗します。
すなわち
$("#tblePagedList").on("change", styleRows);
また
$("#tblePagedList").change(styleRows);
私のテーブルは次のようになります。
<table id="tblePagedList">
<thead>
<tr>
<th>
Company
</th>
<th>
Address
</th>
<th style="width:100px;">
Telephone
</th>
<th style="width:100px;">
Contact
</th>
<th style="width:100px;">
Trade
</th>
<th></th>
</tr>
</thead>
<tbody id="tblePagedListBody"></tbody>
@foreach (var item in Model) {
<tr>
<td>
@item.Company
</td>
<td>
@item.AddressLine
</td>
<td>
@item.Telephone
</td>
<td>
@item.Contact
</td>
<td>
@item.TradeName
</td>
<td>
@Html.ActionLink("Details", "DetailsSubcontractor", new { id = item.CompanyId })
</td>
</tr>
}