コードが多いので、簡単に言葉で説明したいと思います。JavaScriptファイルへのすべての参照を含むマスターページがあり、マスターページを使用するページがあります。私は自分のページで更新パネルを使用しており、更新パネル内には、ポストバック機能 (つまり、ドロップダウンリスト) を含むいくつかのフォームがあります。問題は、状態が変化し、部分的なポストバックが発生したときです。これらの JavaScript のためにフォームにいくつかの機能と効果があり、すべての機能が失われます。どんな助けでも大歓迎です。
質問する
2255 次
1 に答える
6
これは、更新パネルで部分的にポストバックした後、JavaScript を再初期化する必要があるためです。これは一般的な例です
<script type="text/javascript">
// if you use jQuery, you can load them when dom is read.
$(document).ready(function () {
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_initializeRequest(InitializeRequest);
prm.add_endRequest(EndRequest);
// Place here the first init
});
function InitializeRequest(sender, args) {
}
function EndRequest(sender, args) {
// after update occur on UpdatePanel re-init what you need
}
</script>
関連する質問:
Gridview Jquery DatePicker の Asp.Net UpdatePanel
javascript で要求を初期化する Id 更新パネルを取得する方法
ネット 4 の後、関数を簡単に使用することもできますpageLoad
。これは OnLoad 関数に似ていますが、asp.net によって処理され、最初のページの読み込み時に呼び出されますが、各 ajax 更新後にも呼び出されます。
function pageLoad()
{
// init here your javascript
// This is called when the page load first time
// and called again each time you have an Update inside an UpdatePanel
}
参照: http://msdn.microsoft.com/en-us/library/bb386417(v=vs.100).aspx
于 2013-02-08T09:57:34.687 に答える