編集可能なテーブルに特定のレコードを表示しています。ユーザーがレコードの編集中にテーブルをリロードしようとすると、保存されていないデータについてレコードに警告するポップアップが表示されます。
function cancelProcess()
{
if(noEditedRecords !=0)//number of edited records in the table
{
var processConfirmation = confirm("You've Edited "+ noEditedRecords +" Records. Are You sure to undo the Changes made?");
if (processConfirmation ==true){
window.onbeforeunload = null;
window.location.reload();
}
}
}
[OK] をクリックしてページをリロードすると、Firefox は次のようにプロンプトを出します。
このページを表示するには、Firefox は以前に実行されたアクション (検索や注文の確認など) を繰り返す情報を送信する必要があります。
また、Chrome で同じページを開くと、そのようなプロンプトは表示されません。
を設定してこれを回避しようとしましwindow.onbeforeunload = null;
たが、それでもプロンプトウィンドウが表示されます。
また、Firefoxの構成を変更してみました:
browser.sessionstore.postdata
Mozilla サポート ページで提案されているように、0 を 1 に変更しました。
しかし、何も機能しませんでした..プロンプトを防ぐにはどうすればよいですか?