2011-06-23 48 views
0

いくつかの情報を編集するための新しいウィンドウをポップアップ表示するaspxページがあります。親ページの更新情報が更新され、表示されるようにwindow.parent.location.reload(true);問題を引き起こす!

Context.Response.Write("<script type='text/javascript'>window.parent.location.reload(true);window.frameElement.commitPopup();</script>"); 
Context.Response.Flush(); 
Context.Response.End(); 

:ユーザーは、彼らが保存]をクリックし、保存するイベントの最後に編集を行った場合、私はこのC#のコードを持っています。私の問題は、前のページでポストバックを引き起こした他のアクションを実行した場合、上記のコードはそのポストバックをやり直そうとします(例えばアイテムを削除しようとしています)。

最後のポストバックをやり直すことなく、親ページで自分の情報を更新できる方法はありますか?

+0

ポップアップが親ページに閉じ火災のイベントがありますを行うことができます。それを処理し、リフレッシュが必要なセクションだけをリフレッシュすることができます。 –

答えて

1

なぜちょうどあなたのhrefは、すべての準備ができ、他のparametresを持っている場合今、あなたが追加することができ、ランダムparametreで同じページをロード負荷を強制的にではなく、作るのリロードを行うと

window.parent.location.href = window.parent.location.href + '?rnd=' + Math.random(); 

をポストバックありません& rnd

あなたは多くのリロードを行う場合は、このようRNDを置き換えることができます。

window.parent.location.href = window.parent.location.href.replace(/\?rnd.*$/, '?rnd' + Math.random()); 

また、あなたは

window.parent.location.replace(window.parent.location.href.replace(/\?rnd.*$/, '?rnd' + Math.random())); 
+0

完璧!ありがとう! –

関連する問題