質問

ASP.NET Webアプリケーションでは、Telerik Radウィンドウで構築されたモーダルポップアップがあります。そのポップアップには、「Code-Behind」でアクションを実行し、アプリケーションを別のページにリダイレクトする必要があるボタンがあります。

リダイレクトには、javaScriptコマンド 'top.document.location.href = mypage'を使用します(code-behindからscriptmanager.registerclientscriptblock(...)を使用してブラウザに送信されます)。

これは私の問題を解決しますが、それはあまり良くありません。ボタンが押されると、これによりポストバックがトリガーされます。ブラウザでは、ポストバックが終了すると消えるRadloadingPanelでポップアップが覆われています。その後、数秒の間、アプリケーションでは何も起こりません。ブラウザが新しいページをロードするのはしばらく経ってからです。

ユーザーがアプリケーションが何をしているのかわからないため、数秒間に何も起こらないという事実は大きくありません。

私に何ができる ?リダイレクトを行うためのより良い方法はありますか? (JavaScriptプログラミングは非常に初めてです...)。

役に立ちましたか?

解決

「top.document.location.href = mypage」を呼び出すだけでなく、オーバーレイを表示する関数を呼び出すことができます(たとえば、親ページ本体にradajaxloadingpanelを表示)、新しいURLを設定できます。見る http://www.telerik.com/help/aspnet-ajax/ajxshowhideloadingpanel.html JavaScriptを使用してパネルを読み込む方法については。

location.hrefが正常に設定した後の遅延は、ブラウザ/サーバーが新しいページHTMLを取得するのに時間がかかるため、古いページがすぐに消えることができないと思います。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top