更新パネル付きのjquery

asp.net c# javascript jquery updatepanel
更新パネル付きのjquery

jqueryコンテキストメニューと更新パネルの使用中に問題が発生しました。 htmlTextWriterを使用して、CustomtextboxコントロールのRenderBeginTagにコンテキストメニューのjavascriptを記述しています。 すべてが正常に機能し、すべてのテキストボックスを右クリックするとメニューが表示されます。 +しかし、asp.net updatepanelを使用して部分的なポストバックをトリガーすると、メニューは表示されません。 部分的なポストバックが発生すると、jqueryとhtmlの間のバインディングが失われるようです。 + RenderBeginTag以外の動的なjavascriptコードを配置するより良い方法はありますか? どうやってこの問題を解決できますか?

  3  0


ベストアンサー

そうです、updatepanelはjavascriptバインディングを削除します。

updatepanelポストバックで、問題のjavascriptを再登録します。

何かのようなもの:

ClientScriptManager cs = Page.ClientScript;
cs.RegisterStartupScript(typeof(Page), "ReApplyJavascript", "YourJavascriptInitMethod();", false);

それが機能しない場合。 以下を使用する必要がある場合があります。

   ScriptManager.RegisterStartupScript(Page, typeof(Page), "ReApplyJavascript", "YourJavascriptInitMethod();", false);

3


UpdatePanelの更新後、menouを再初期化する必要があります。

var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_initializeRequest(InitializeRequest);
prm.add_endRequest(EndRequest);

function InitializeRequest(sender, args) {
}

function EndRequest(sender, args) {
     // Here initialize the menou
}

1


タイトルとURLをコピーしました