我正在使用window.onbeforeunload來防止用戶在更改表單上的值後導航。這工作正常,除了它還顯示用戶提交表單(不需要)時的警告。window.onbeforeunload - 僅在未提交表單時顯示警告
如何在表單提交時不顯示警告的情況下執行此操作?
當前代碼:
var formHasChanged = false;
$(document).on('change', 'form.confirm-navigation-form input, form.confirm-navigation-form select, form.confirm-navigation-form textarea', function (e) {
formHasChanged = true;
});
$(document).ready(function() {
window.onbeforeunload = function (e) {
if (formHasChanged) {
var message = "You have not saved your changes.", e = e || window.event;
if (e) {
e.returnValue = message;
}
return message;
}
}
});
我接受了@ Derek的這個,因爲我已經有自定義提交代碼,需要分別檢查兩個值。 – mtmurdock 2012-08-01 21:15:56