2016-08-22 159 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