博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[Javascript] 如何在客户端验证表单被改变
阅读量:6350 次
发布时间:2019-06-22

本文共 981 字,大约阅读时间需要 3 分钟。

Form中的每个对象都保留了初始值,所以可以在提交表单时,遍历Form中对象,

检查对象当前的值与初始值是否一致,就判断出了表单是否被修改了。
示例代码

 1
None.gif
function
 IsFormChanged()
 2
ExpandedBlockStart.gif
{
 3InBlock.gif    var isChanged = false;
 4InBlock.gif    var form = document.forms[0];
 5InBlock.gif    for (var i = 0; i < form.elements.length; i++)
 6ExpandedSubBlockStart.gif    {
 7InBlock.gif        var element = form.elements[i];
 8InBlock.gif        var type    = element.type;
 9InBlock.gif        if (type == "text" || type == "hidden" || type == "textarea" || type == "button")
10ExpandedSubBlockStart.gif        {
11InBlock.gif            if (element.value != element.defaultValue)
12ExpandedSubBlockStart.gif            {
13InBlock.gif                isChanged = true;
14InBlock.gif                break;
15ExpandedSubBlockEnd.gif            }
16ExpandedSubBlockEnd.gif        }
17InBlock.gif        else if (type == "radio" || type == "checkbox")
18ExpandedSubBlockStart.gif        {
19InBlock.gif            if (element.checked != element.defaultChecked)
20ExpandedSubBlockStart.gif            {
21InBlock.gif                isChanged = true;
22InBlock.gif                break;
23ExpandedSubBlockEnd.gif            }
24ExpandedSubBlockEnd.gif        }
25InBlock.gif        else if (type == "select-one")
26ExpandedSubBlockStart.gif        {
27InBlock.gif            for (var j = 0; j < element.options.length; j++)
28ExpandedSubBlockStart.gif            {
29InBlock.gif                if (element.options[j].selected != element.options[j].defaultSelected)
30ExpandedSubBlockStart.gif                {
31InBlock.gif                    isChanged = true;
32InBlock.gif                    break;
33ExpandedSubBlockEnd.gif                }
34ExpandedSubBlockEnd.gif            }
35ExpandedSubBlockEnd.gif        }
36InBlock.gif        else
37ExpandedSubBlockStart.gif        {
38InBlock.gif            //
39ExpandedSubBlockEnd.gif        }
40ExpandedSubBlockEnd.gif    }
41InBlock.gif
42InBlock.gif    return isChanged;
43ExpandedBlockEnd.gif}
本文转自高海东博客园博客,原文链接:http://www.cnblogs.com/ghd258/archive/2007/01/12/618257.html,如需转载请自行联系原作者
你可能感兴趣的文章
60906磁悬浮动力系统应用研究与模型搭建
查看>>
指纹获取 Fingerprint2
查看>>
面试题目3:智能指针
查看>>
取消凭证分解 (取消公司下的多个利润中心)
查看>>
flask ORM: Flask-SQLAlchemy【单表】增删改查
查看>>
vim 常用指令
查看>>
nodejs 获取自己的ip
查看>>
Nest.js 处理错误
查看>>
你好,C++(16)用表达式表达我们的设计意图——4.1 用操作符对数据进行运算...
查看>>
18.3 redis 的安装
查看>>
jdbc 简单连接
查看>>
Activiti 实战篇 小试牛刀
查看>>
java中的Static class
查看>>
Xshell 连接CentOS服务器解密
查看>>
[工具类]视频音频格式转换
查看>>
GNS3与抓包工具Wireshark的关联
查看>>
groovy-语句
查看>>
VIM寄存器使用
查看>>
Java VisualVM远程监控JVM
查看>>
nasm预处理器(2)
查看>>