3

関数と同様に機能する小さなポップアップメッセージを開発してwindow.beforeunload、現在のページを離れるとすべてのデータが失われることをユーザーに通知しようとしています。

ただし、beforeunloadイベントの問題は、頻繁に発生することです。

ユーザーがページを閉じたとき、または現在のページから移動するリンクをクリックしたときにのみ、ポップアップメッセージを起動して、現在のアクションがフォームデータの損失につながることを確実に認識できるようにしたいと思いますここまで入りました。

ただしbeforeunload、この場合は不要なページの更新時や、フォーラムが送信されたときにもイベントが発生します。

これを開発するための最良の方法について誰かにアドバイスしてもらえますか。基本的な確認ダイアログを使用して、適切な状況で起動することを考えましたが、ユーザーがページを更新しているかどうか、およびフォーラムが送信されているかどうか (jQuery なしで) を知ることは可能ですか?

このダイアログを適切なタイミングで起動するにはどうすればよいですか?

4

3 に答える 3

2

残念ながら、これは不可能だと思います。セキュリティ上の理由から、ページのアンロード イベントは非常に制限されています。

于 2012-09-13T10:52:02.537 に答える
0

フォームがそれほど複雑ではないと仮定すると、Ajax 呼び出しを使用してフォーム データを保存できます。つまり、ページのリロードはありません。したがって、beforeunload設計どおりに動作します。

于 2012-12-28T12:28:11.770 に答える
0

ユーザーがフォームデータを追加または変更した場合にのみ表示したい場合は、データの変更をチェックしてみませんか? はいの場合は に質問を返しますbeforeunload。そうでない場合は何もしません。

于 2012-09-13T11:43:44.400 に答える