0

フォームを含むページを離れるときに、ユーザーの確認なしで行った変更を保存したいと考えています。

この質問を見つけたので、回答の1つを次のように適応させました。return を使用していないことに注意してください。

function setConfirmUnload(on) {
    window.onbeforeunload = (on) ? unloadMessage : null;
}
function unloadMessage() {
    alert('Gonna save now');
    setTimeout(validate_submit,500);
}

これは、ユーザーがフォームに値を入力したときにのみトリガーされます。要素の値が変更された場合は、使用します

setConfirmUnload(true);

FF23 の結果: ユーザーがどこかをクリックしてページを離れると、アラートが表示され、validate_submit() が "OK" で実行され、新しいページが表示されます - しかし、アラートが再び表示され、ユーザーは "OK" で元のページに戻ります. なんで?誰かがこの動作を確認できますか?

4

1 に答える 1