我有一个订单页面,管理员在其中选择订单。使用jquery在定期间隔后,在数据库中存储和更新所选订单。如果在选择复选框后用户离开页面我想给他一个确认消息。这不适用于chrome。因为chrome onbeforeunload事件需要返回字符串。在卸载页面时它会阻止所有警报和确认框。我可以获得用户是否想留在页面上的操作(.. //什么都不做)离开页面(//更新表格) 请帮忙
答案 0 :(得分:1)
<script>
window.onbeforeunload = function(e) {
//alert('Dialog text here.') Wrong//
return 'Dialog text here.';
};
</script>
它应该写成这样。根据{{3}}
我尝试了不同的方法,最后得到了这个:
window.onbeforeunload = function(){
setTimeout(function(){
//do something
alert('You stay!!')
},500);
return 'Dialog text here.';
}
答案 1 :(得分:0)
https://developer.mozilla.org/en-US/docs/Web/API/Window.onbeforeunload州
自2011年5月25日起,HTML5规范声明在此事件期间可能会忽略对window.showModalDialog(),window.alert(),window.confirm()和window.prompt()方法的调用。
用户选择离开页面后,您无法执行任何操作。在页面导航之前,无法保证调用AJAX调用。因此,如果用户确认离开,您就丢失了它们。您可以更改警告以说服他们留下,然后在离开前手动点击页面上的Save
或Confirm
按钮。