`

from表单中的内容是否未改变

 
阅读更多
function isFormChanged(fm,exceptObjName)
{
if(fm==null) fm=document.forms[0];
if(exceptObjName==null) exceptObjName=="";
var selectObjs=fm.getElementsByTagName("SELECT");//For Select Obj
for(var i=0;i<selectObjs.length;i++)
{
if((selectObjs[i].name=="")||(eval("/(^|,)"+selectObjs[i].name+"(,|$)/g").test(exceptObjName))) continue;
for(var j=1;j<selectObjs[i].length;j++)
{
if(selectObjs[i].options[j].defaultSelected!=selectObjs[i].options[j].selected){
return true;
}
}
}

var inputObjs=fm.getElementsByTagName("INPUT");//For Input Obj
for(var i=0;i<inputObjs.length;i++)
{
if((inputObjs[i].name=="")||(eval("/(^|,)"+inputObjs[i].name+"(,|$)/g").test(exceptObjName))) continue;
if((inputObjs[i].type.toUpperCase()=="TEXT")&&(inputObjs[i].defaultValue!=inputObjs[i].value)){
return true;
} else if(((inputObjs[i].type.toUpperCase()=="RADIO")||(inputObjs[i].type.toUpperCase()=="CHECKBOX"))
&&(inputObjs[i].defaultChecked!=inputObjs[i].checked)) {
return true;
}
}

var textareaObjs=fm.getElementsByTagName("TEXTAREA");//For Textarea Obj
for(var i=0;i<textareaObjs.length;i++)
{

if((textareaObjs[i].name=="")||(eval("/(^|,)"+textareaObjs[i].name+"(,|$)/g").test(exceptObjName))) continue;
if(textareaObjs[i].defaultValue!=textareaObjs[i].value)
return true;
}
return false;
}
分享到:
评论

相关推荐

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

    需要检查用户是否修改了一个表单中的内容,可以使用本文提供的方法,如果修改了表单的内容则返回true,没修改则返回false,有需求的朋友可以参考下

    jquery-formChange:检查表单的元素是否已更改

    检查表单的元素是否真的从初始值改变了。 ##入门 包括 jquery.formChange.js 文件,然后将 formChange 应用到任何表单。 $ ( 'form' ) . formChange ( { hasChangedClass : 'has-changed' } ) ; $ ( 'form' )...

    C#中窗体Form的美化

    C#中窗体Form的美化

    ASP.NET中如何防范SQL注入式攻击

     如果攻击者知道应用会将表单中输入的内容直接用于验证身份的查询,他就会尝试输入某些特殊的SQL字符串篡改查询改变其原来的功能,欺骗系统授予访问权限。  系统环境不同,攻击者可能造成的损害也不同,这主要由...

    自定义大小,颜色字体文字Lable效果

    自定义大小,颜色字体文字Lable效果,这个效果是在无聊...本例子的作用是一行显示不同大小、颜色字体文本,可以居左、中、右显示,估计大家可以用的到 ,不完美的是不能多行显示,ps:例外我有多行显示的,要的可以M我。

    节点查询 遍历节点 改变成内容 获取表单值 通过style修改样式 通过classlislt 修改类名

    节点查询 getelemaentbyld()通过id获取元素 getelemenstsbytagname... // var arr = Array.from(ps); // arr.forEach(function(elem){ // console.log(elem,elem.innerText) // }) 转为数组 var

    毕业设计基于flask框架和python搭建的互动问答论坛源码+项目说明(含nginx部署方案).zip

    这样做的目的是为了在大型项目中如果`db`被多个模型文件引用的话,会造成`from your_app import db`这样的方式,但是往往也在`your_app.py`中也会引入模型文件定义的类,这就造成了循环引用。所以最好的办法是把它...

    Visual C++ 编程资源大全(英文源码 表单)

    04.zip Outlook Style UI Outlook风格的界面效果(16KB)&lt;END&gt;&lt;br&gt;5,05.zip Dynamic child window repositioning 动态改变对话框的大小, 对话框中的控件相应改变(15KB)&lt;END&gt;&lt;br&gt;6,06.zip Enhanced list...

    auto-fill-post-password-from-url:如果在 url 中提供,则填写用户的帖子密码

    auto-fill-post-password-from-url 如果在 url 中提供,则填写用户的帖子密码 #用例如果您网站中的帖子是半公开的并且受密码保护,则会提示访问者输入密码。 在某些嵌入或与不太了解网络的人交流的情况下,输入密码...

    WTL 9.1 5270 Beta 中文 汉化 中英文对照版

    WTL9.1-ReadMe-中英文对照版 Windows Template Library - WTL Version 9.1 (build 5270) 2015-09-27 Windows模板库 - WTL Version 9.1 (build 5270) 2015-09-27 (水平有限,不足之处,欢迎指正交流:ybmj@vip.163....

    WTL 9.1 5270 ReadMe 中文 汉化 中英文对照版 01d

    WTL9.1-ReadMe-中英文对照版 Windows Template Library - WTL Version 9.1 (build 5270) 2015-09-27 Windows模板库 - WTL Version 9.1 (build 5270) 2015-09-27 (水平有限,不足之处,欢迎指正交流:ybmj@vip.163....

    Google.Hacks.探索和利用全球信息资源的技巧和工具

    以便于在Google Reader中监听 5,以一种新的有效的方式保持标签 6,将Gmail转换为Windows,Mac或者Mac的外部驱动 7,为网页加入搜索、ads、新种子,以及其他内容使自己的网页更充实 8,使用自己选择的语言,用...

    ExtAspNet_v2.3.2_dll

    -修正Alert消息中引号未编码导致的JS错误(feedback:sun1299shine)。 +集成extjs3.0.3。 -修正弹出对话框的宽度计算错误(会保持最小的状态)。 -增加新的皮肤Gray。 -为示例工程添加改变语言和皮肤的下拉列表。...

    ExtAspNet v2.2.1 (2009-4-1) 值得一看

    -修正Alert消息中引号未编码导致的JS错误(feedback:sun1299shine)。 +集成extjs3.0.3。 -修正弹出对话框的宽度计算错误(会保持最小的状态)。 -增加新的皮肤Gray。 -为示例工程添加改变语言和皮肤的下拉列表。...

    react-divider

    React分压器页面部分分隔符作为React组件安装npm install --save react-divider用法import React , { Component } from 'react'import MyComponent from 'react-divider'class Example extends Component { render ...

    net学习笔记及其他代码应用

    9.描述一下C#中索引器的实现过程,是否只能根据数字进行索引? 答:不是。可以用任意类型。 10.求以下表达式的值,写出您想到的一种或几种实现方法: 1-2+3-4+……+m [Page] 答: int Num = this.TextBox1.Text....

    dreamweaver的各种组件

    Feed back from 插入一from, 经由它你可以在e-mail中收到表单的资料. Dynamic clock 插入一动态即时时钟. History Back 插入如浏器中Back的连结点. Jump Menu 插入一可快速连结的表单. Page Transitions 想不想...

    在vue中使用vant TreeSelect分类选择组件操作

    //先在你需要的页面中引入,第一个是弹出层,第二个是选择的 import { Popup } from vant; import { TreeSelect } from vant; 代码部分: &lt;van-tree-select :items=items :active-id.sync=items.activeId...

    java面试宝典

    42、一个“.java”源文件中是否可以包含多个类(不是内部类)?有什么限制? 12 43、说出一些常用的类,包,接口,请各举5 个。 12 44、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类?是否可以...

    ZendFramework中文文档

    Dumping feed 内容 13.3. 从网页上获得Feed 13.4. RSS Feed的使用 13.5. Atom Feed的使用 13.6. 单个Atom条目的处理 13.7. 修改Feed和条目结构 13.8. 自定义Feed和条目类 14. Zend_Filter 14.1. 简介 ...

Global site tag (gtag.js) - Google Analytics