ユーザーがフォーム フィールドでいくつかの変更を行うことを許可し、ユーザーが変更を行ったかどうかに基づいて、[変更を送信] ボタンを有効にしました。
ユーザーが行った変更を送信せずに、他のページに移動することをユーザーに確認する機能を追加したいと考えています。ダイアログ ボックスを表示するコードを追加しましたが、問題は、ダイアログ ボックスが短時間表示された後、ページ ナビゲーションが別のページに移動することです。私のコードは次のとおりです。
window.onbeforeunload = function() {
if(!dijit.byId('editBtn').get('disabled')) {
discardChanges(
'Pending Unsaved Changes',
'You have pending unsaved changes. Do you really want to discard them?',
'Discard Changes',
function() {
return true;
},
function() {
return false;
},
300,
700);
}
}
ブラウザが他のページに移動するのを止めて、ユーザーがダイアログ ボックスのボタンをクリックするのを待ってから、クリックを破棄するかどうかを決定するにはどうすればよいですか。ダイアログ ボックスは次のようになります。