创建时间: | 2016/8/31 14:52 |
来源: | http://www.jb51.net/article/89707.htm |
本文实例讲述了js检测离开或刷新页面时表单数据是否更改的方法。分享给大家供大家参考,具体如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | function formIsDirty(form) { for ( var i = 0; i < form.elements.length; i++) { var element = form.elements[i]; var type = element.type; if (type == "checkbox" || type == "radio" ) { if (element.checked != element.defaultChecked) { return true ; } } else if (type == "hidden" || type == "password" || type == "text" || type == "textarea" ) { if (element.value != element.defaultValue) { return true ; } } else if (type == "select-one" || type == "select-multiple" ) { for ( var j = 0; j < element.options.length; j++) { if (element.options[j].selected != element.options[j].defaultSelected) { return true ; } } } } return false ; } window.onbeforeunload = function (e) { e = e || window.event; if (formIsDirty(document.forms[ "someForm" ])) { // IE 和 Firefox if (e) { e.returnValue = "对不起,页面数据已做修改,尚未保存,确定要刷新或离开本页面?" ; } // Safari浏览器 return "对不起,页面数据已做修改,尚未保存,确定要刷新或离开本页面?" ; } }; |
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript中json操作技巧总结》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。