2016-08-22 155 views
1

在頁面重新加載時,我必須顯示消息「文件上傳正在進行中,上傳將在重新加載時丟失!」。我正在使用下面的代碼,但警報始終是「您所做的更改可能無法保存!」在Chrome瀏覽器中使用無法在onbeforeunload事件中自定義消息

window.onbeforeunload = function() { 
    return 'File upload in progress, your upload will be lost on reload!'; 
} 
+4

的可能重複[我怎樣才能重寫OnBeforeUnload對話框並用我自己更換呢?(http://stackoverflow.com/questions/276660/how-can-i-override-the-onbeforeunload -dialog-and-replace-it-with-my-own) –

+0

你需要用文本設置事件的'.returnValue'屬性而不是返回它。奇怪,我知道,但這就是規格說的。 [MDN](https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onbeforeunload) – Whothehellisthat

回答

0

您需要使用文本設置事件的.returnValue屬性而不是返回它。奇怪,我知道,但這就是規格說的。 MDN

window.onbeforeunload = function(event) { 
    event.returnValue = 'File upload in progress, your upload will be lost on reload!'; 
} 
+1

即使這樣也行不通。看看這個:https://jsfiddle.net/AmalaLiza/3kxp83nm/ –

+0

啊,看起來像@大衛R是對的。看看另一個答案,你會發現大多數瀏覽器都忽略了實際的消息,只顯示他們自己的消息。 – Whothehellisthat