javascript检查表单数据是否改变的方法
更新时间:2013年07月30日 16:36:41 作者:
需要检查用户是否修改了一个表单中的内容,可以使用本文提供的方法,如果修改了表单的内容则返回true,没修改则返回false,有需求的朋友可以参考下
有的时候,需要检查用户是否修改了一个表单中的内容,则可以使用下面的技巧,其中如果修改了表单的内容则返回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.";
}
};
复制代码 代码如下:
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.";
}
};
相关文章
一个友好的.改善的 Object.prototype.toString的实现
一个友好的.改善的 Object.prototype.toString的实现...2007-04-04小程序:授权、登录、session_key、unionId的详解
这篇文章主要介绍了小程序:授权、登录、session_key、unionId的详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-05-05XMLHTTP 乱码的解决方法(UTF8,GB2312 编码 解码)
XMLHTTP 乱码的解决方法(UTF8,GB2312 编码 解码)(附带解决DHTMLX不能用中文的问题)2011-01-01
最新评论