UpdatePanels と jQuery によるイベント バインディングの問題の解決 $(document).ready
ASP.NET アプリケーション内で UpdatePanels を使用する場合、次のことが重要です。 jQuery の $(document).ready 関数を使用したイベント バインディングがどのように動作するかを検討してください。 UpdatePanel がページを部分的に更新すると、$(document).ready を使用してバインドされたイベントが機能しなくなる可能性があります。
これに対処する推奨されるアプローチは、$(document).ready だけに依存しないことです。代わりに、UpdatePanel が存在する場合に使用できる Microsoft の PageRequestManager オブジェクトを利用します。 PageRequestManager の add_endRequest メソッドを使用すると、UpdatePanel が更新されるたびにイベントを再サブスクライブできます。
例
$(document).ready(function() { // Bind initial jQuery events }); var prm = Sys.WebForms.PageRequestManager.getInstance(); prm.add_endRequest(function() { // Re-bind jQuery events });
さらに、jQuery の .on() メソッドは次のような機能を提供します。イベント委任のためのより効率的なオプション。ただし、すべての状況に適しているわけではないため、このアプローチを採用する前にドキュメントをよく確認してください。特定の jQuery プラグインでは、前述の再サブスクリプション方法が必要な場合があります。
これらのアプローチを採用すると、UpdatePanel と jQuery を使用してイベント バインディングを効果的に管理でき、ページの部分的な更新中もインタラクティブな要素の応答性を維持できます。
以上がASP.NET UpdatePanel の部分的なページ更新後も jQuery イベントが機能し続けることを確認するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。