js阻止页面刷新


网页中用户的表单填写到一半,或者ajax请求发送期间,如果用户刷新浏览器可能会导致数据保存失败。需要阻止页面刷新,这时可以通过监听页面window.onbeforeunload事件函数来处理。

window.onbeforeunload = function(e) {
var dialogText = 'Dialog text here';
e.returnValue = dialogText;
return dialogText;
};

不过chrome不支持自定义显示文字,固定为
“要重新加载该网站吗?
系统可能不会保存您所做的修改”
而firefox和safari就会正常使用return value里面的文字

参考:
-- https://developer.mozilla.org/en-US/docs/Web/API/WindowEventHandlers/onbeforeunload#Browser_compatibility

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,665评论 0 17
  • @转自GitHub 介绍js的基本数据类型。Undefined、Null、Boolean、Number、Strin...
    YT_Zou阅读 1,221评论 0 0
  • <a name='html'>HTML</a> Doctype作用?标准模式与兼容模式各有什么区别? (1)、<...
    clark124阅读 3,599评论 1 19
  • 01 “10点了,你准备要睡去了吧,晚安。” 这一天我与朋友聊天时,朋友发过来的消息。 熟悉我的人都知道,我一旦回...
    四点半的洛杉矶阅读 408评论 2 14
  • 温馨提示,以下关于过午不食21天的日记,是16年刚开始坚持时所记录的。因为怕有的朋友想坚持但是又担心,疑惑。所以把...
    陈晓依阅读 396评论 0 0