1

1 つのメイン ウィンドウといくつかの子ウィンドウがあります。私の子ウィンドウはコードビハインドで作成しています。

 var newWindow = window.open(url, windowName, windowFeatures);

また、追加する必要があります

 newWindow.document.onfocusout = this.windowOnUnload;

子供へのイベント。私の問題は、このページへの POST アクションが必要なときに、上記と同じコードでこの子ウィンドウを再作成することです。しかし、onfocusout イベントは発生していません。しかし、初めて発火します。また、子ウィンドウは常に同じウィンドウ名で作成しています。解決策を見つけるのを手伝ってください。ありがとうございました

ここに画像の説明を入力

4

1 に答える 1

1

ウィンドウを再作成するとき、その内容を ajax 呼び出しで更新するということでしたか? または、文字通りそれを閉じてから、再度ウィンドウを呼び出しますか。開いて、最後に onfocusout イベントを配線しますか?

前者の場合は、AJAX 呼び出しを使用して取得した新しいドキュメントにイベントを再接続する必要があります。これは、ドキュメント全体が変更され、以前のドキュメント オブジェクトの以前のイベント ハンドラーが関連しなくなったためです。

更新: 使用しているすべての関連コードを投稿していただけますか? これが私ができる最善の方法です。

newWindow.document.onfocusout = this.windowOnUnload;必要なことを行う正しい方法ではないようです。私はそれがあなたと一緒に働いていることに驚いています。次の質問を確認してください:ブラウザ ウィンドウが現在アクティブでないかどうかを検出する方法はありますか?

于 2013-07-10T04:20:12.793 に答える