私はasp.net MVCの部分ビューを持っています。その中でjQueryを使用して、テキストボックスの日付ピッカーをポップアップします。クリックされたときに部分ビューをリロードするために Ajax を使用するキャンセル ボタン。すべてが最初のロードでうまく機能します。ただし、キャンセル ボタンをクリックすると、すべての jQuery 機能が消えます。たとえば、テキスト ボックスに日付ピッカーが表示されなくなります。何が問題なのですか?
質問する
1533 次
2 に答える
1
ajax を介して部分ビューを更新する場合、jquery を使用してバインドされたイベントは、再バインドするか、 jquery liveを使用してバインドするか、1.7 以降では jquery on を使用してバインドする必要があります。
$(document).on(events, selector, data, handler); // jQuery 1.7+
于 2012-07-25T15:50:51.697 に答える
0
部分ビューをリロードすると、古い (現在は置き換えられた) 部分ビューの要素のハンドラーはすべて失われます。機能を元に戻すには、それらを再バインドする必要があります。
ハンドラーをバインドするパーシャルの最後にあるスクリプト ブロックが機能します。または、必要に応じて、AJAX の成功または完全なコールバックを処理するコードでそれらを再バインドできます。
于 2012-07-25T15:48:19.327 に答える