나는 퀴즈를 만들고 있습니다. 양식을 제출하기 전에 페이지를 닫을 수 없습니다. 그렇지 않으면 모든 데이터가 손실됩니다. 다음을 사용하여 수행 할 수 있습니다.window.onbeforeunload 제출을 클릭하지 않은 경우 확인
window.onbeforeunload = function() {
return "Are you sure?"
}
그러나 사용자가 "제출"을 클릭 한 경우이 경고를 트리거하지 않으려면 어떻게해야합니까? 아래 코드를 시도했지만 전혀 작동하지 않습니다. 창을 닫더라도 경고를 표시하지 않습니다.
var clicked_submit = false;
$(document).ready(function() {
$('#submit-button').click(function() {
clicked_submit = true;
});
window.onbeforeunload = function() {
if (clicked_submit){
} else {
return 'Are you sure?'
}
}
});
'False! == false'와'True! == true '또한 처리기의 메시지가 브라우저에 따라 다르지만 일부 브라우저에서는이를 무시합니다. – Teemu
대신 다른 경우, 당신은 할 수 simplay 할 수없는 경우 : if (! ... 또한, 당신은 window.onbeforeunload = null을 재정의 할 수 있습니다;) 코드를 쉽게 만드는 –