javascript检查表单数据是否改变的方法


Posted in Javascript onJuly 30, 2013

有的时候,需要检查用户是否修改了一个表单中的内容,则可以使用下面的技巧,其中如果修改了表单的内容则返回true,没修改表单的内容则返回false。代码如下:

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"])) { 
if (e) { 
e.returnValue = "You have unsaved changes."; 
} 
return "You have unsaved changes."; 
} 
};
Javascript 相关文章推荐
use jscript Create a SQL Server database
Jun 16 Javascript
js 数值项目的格式化函数代码
May 14 Javascript
jQuery 学习第七课 扩展jQuery的功能 插件开发
May 17 Javascript
JS运动框架之分享侧边栏动画实例
Mar 03 Javascript
JavaScript实现文本框中默认显示背景图片在获得焦点后消失的方法
Jul 01 Javascript
jQueryUI DatePicker 添加时分秒
Jun 04 Javascript
原生 JS Ajax,GET和POST 请求实例代码
Jun 08 Javascript
纯JS打造网页中checkbox和radio的美化效果
Oct 13 Javascript
html判断当前页面是否在iframe中的实例
Nov 30 Javascript
javascript 注释代码的几种方法总结
Jan 04 Javascript
Ionic项目中Native Camera的使用方法
Jun 07 Javascript
JS如何实现基于websocket的多端桥接平台
May 14 Javascript
JS 对输入框进行限制(常用的都有)
Jul 30 #Javascript
JS无限极树形菜单,json格式、数组格式通用示例
Jul 30 #Javascript
js中widow.open()方法使用详解
Jul 30 #Javascript
Extjs NumberField后面加单位实现思路
Jul 30 #Javascript
Js中获取frames中的元素示例代码
Jul 30 #Javascript
js中的屏蔽的使用示例
Jul 30 #Javascript
使用js正则控制input标签只允许输入的值
Jul 29 #Javascript
You might like
PR值查询 | PageRank 查询
2006/12/20 PHP
基于php中使用excel的简单介绍
2013/08/02 PHP
PHP随机生成信用卡卡号的方法
2015/03/23 PHP
thinkPHP2.1自定义标签库的导入方法详解
2016/07/20 PHP
php使用redis的几种常见操作方式和用法示例
2020/02/20 PHP
JavaScript使用技巧精萃[代码非常实用]
2008/11/21 Javascript
javascript或asp实现的判断身份证号码是否正确两种验证方法
2009/11/26 Javascript
js和jquery如何获取图片真实的宽度和高度
2014/09/28 Javascript
jQuery固定浮动侧边栏实现思路及代码
2014/09/28 Javascript
javascript实现checkbox全选的代码
2015/04/30 Javascript
javascript顺序加载图片的方法
2015/07/18 Javascript
JavaScript内存泄漏的处理方式
2017/11/20 Javascript
微信小程序使用for循环动态渲染页面操作示例
2018/12/25 Javascript
小程序中英文混合排序问题解决
2019/08/02 Javascript
Java Varargs 可变参数用法详解
2020/01/28 Javascript
javascript canvas检测小球碰撞
2020/04/17 Javascript
jquery更改元素属性attr()方法操作示例
2020/05/22 jQuery
Jquery $.map使用方法实例详解
2020/09/01 jQuery
Python判断列表是否已排序的各种方法及其性能分析
2016/06/20 Python
python获取酷狗音乐top500的下载地址 MP3格式
2018/04/17 Python
解决Opencv+Python cv2.imshow闪退问题
2020/04/24 Python
简单介绍一下pyinstaller打包以及安全性的实现
2020/06/02 Python
Python 利用argparse模块实现脚本命令行参数解析
2020/12/28 Python
详解CSS3的perspective属性设置3D变换距离的方法
2016/05/23 HTML / CSS
Bonami斯洛伐克:购买家具和家居饰品
2019/07/02 全球购物
铭宣海淘转运:美国、日本、英国转运等全球转运公司
2019/09/10 全球购物
优秀教导主任事迹材料
2014/05/09 职场文书
学校运动会霸气口号
2014/06/07 职场文书
小学教师读书活动总结
2014/07/08 职场文书
大学生档案自我鉴定(2篇)
2014/10/14 职场文书
保卫工作个人总结
2015/03/03 职场文书
自主招生自荐信格式
2015/03/04 职场文书
春节晚会开场白
2015/05/29 职场文书
趣味运动会新闻稿
2015/07/17 职场文书
教你使用VS Code的MySQL扩展管理数据库的方法
2022/01/22 MySQL
电脑关机速度很慢怎么办 提升电脑关机速度设置教程
2022/04/08 数码科技