0

最初のページにiframeがあり、2番目のページの2番目のページにフレームをリダイレクトしています。次のように、JavaScriptを使用してiframeからジャンプしています。

<script language="JavaScript" type="text/javascript">
<!--
    function breakout_of_frame() {
        if (top.location != location) {
            top.location.href = document.location.href;
        }
    }
-->
</script>

私の問題は、これによりページが数回実行され、ロードイベントのコードが実行されることです(たとえば、ロード時に電子メールを送信している場合は3回送信されます)。

今、私はブール値を使用して、電子メールがいつ送信されるかを確認しようとしました。これをtrueに設定し、falseの場合は送信しないでください...しかし、それでも機能しません。これを防ぐための提案はありますか?

4

1 に答える 1

0

シンプルでラフで準備が整ったソリューション:

次のリクエストでは、リクエストのクエリ文字列に何かを追加して、2 つのページの違いを識別します。

document.location.href を読んだら、異なる要素を解析し、それに応じて反応します。

例えば:

your-domain/your-path/your-file?donealready=yes

   alert(document.location.href) //will have the parameter at the end
   //parse this to determine how to react
于 2012-11-12T12:19:46.460 に答える