2

document.ready で表の境界線を非表示にする jquery スクリプトを作成しました。

 $(document).ready(function () {
      $(".todotable").last().css("border-bottom", "none");
  });

さらに、マークアップをasp.net更新パネル内に配置して、テーブルを更新する必要があるときにページ全体をポストバックするようにしました。同じ jquery コードをコピーし、更新パネル内に配置しました。ただし、更新パネルが読み込まれるたびにスタイルの変更が適用されるわけではありません。

問題が何であるかを見つけることができませんでした。更新パネル内の document.ready を別のものに置き換える必要がありますか?

4

1 に答える 1

2

問題は、各リクエストの後にコンテンツをロードしているため、ドキュメントの準備が整ったハンドラーが再度呼び出されないことです。

endRequest代わりに、updatePanelのイベントにコードを追加する必要があります。これを試して:

$(function() {
    // your jQuery code to execute on page load...
});

Sys.WebForms.PageRequestManager.getInstance().add_endRequest(function() {
    // code to execute on updatePanel change
    $(".todotable").last().css("border-bottom", "none");
});
于 2012-04-26T09:54:57.520 に答える