基于jquery的监控数据是否发生改变


Posted in Javascript onApril 11, 2011

这样之前的功夫又白费了。解决这些问题的办法就是:监控页面数据是否发生变化。如果发生变化,提示用户保存。如果数据未发生变化。当我们点击保存时,也不需要提交到数据库。
接下来看看解决办法:

///<reference path="jquery-1.3.2-vsdoc2.js" /> 
(function($) { 
var pageDataChange = false //默认标识页面数据未发生改变 
/*监控页面数据是否发生变化*/ 
$.fn.MonitorDataChange = function(options) { 
var tagName = new Array('Input', 'Select', 'Textarea'); 
var ctrlIds = []; var deafult = { 
arrTags: tagName, //需监控控件的tagName属性数组 
arrCtrls: ctrlIds //不监控的控件ID 
}; 
var ops = $.extend(deafult, options); 
for (var i = 0; i < ops.arrTags.length; i++) { 
$(ops.arrTags[i]).each(function() { 
if (ops.arrCtrls.length == 0) { 
$(this).bind('change', function() { 
pageDataChange = true; 
}); 
} 
else { 
var flag = false; 
for (var j = 0; j < ops.arrCtrls.length; j++) { 
if ($(this).attr('id') == ops.arrCtrls[j]) { 
flag = true; 
break; 
} 
} 
if (!flag) { 
$(this).bind('change', function() { 
pageDataChange = true; 
}); 
} 
} 
}); 
} 
return this; 
}; 
/*返回页面数据是否发生变化*/ 
$.fn.getValue = function() { 
return pageDataChange; 
}; 
})(jQuery);
Javascript 相关文章推荐
js中日期的加减法
May 06 Javascript
BootStrap中Datepicker控件带中文的js文件
Aug 10 Javascript
js实现添加可信站点、修改activex安全设置,禁用弹出窗口阻止程序
Aug 17 Javascript
小程序开发实战:实现九宫格界面的导航的代码实现
Jan 19 Javascript
在javascript中,null>=0 为真,null==0却为假,null的值详解
Feb 22 Javascript
jQuery滚动监听实现商城楼梯式导航效果
Mar 06 Javascript
面试常见的js算法题
Mar 23 Javascript
深入理解Vue Computed计算属性原理
May 29 Javascript
vue-cli+axios实现文件上传下载功能(下载接收后台返回文件流)
May 10 Javascript
layui 解决form表单点击无反应的问题
Oct 25 Javascript
vuex实现购物车的增加减少移除
Jun 28 Javascript
JavaScript实现消消乐的源代码
Jan 12 Javascript
jQuery实战之品牌展示列表效果
Apr 10 #Javascript
基于PHP+Jquery制作的可编辑的表格的代码
Apr 10 #Javascript
JQuery优缺点分析说明
Apr 10 #Javascript
基于jquery的15款幻灯片插件
Apr 10 #Javascript
再次分享18个非常棒的jQuery表格插件
Apr 10 #Javascript
javascript学习笔记(七)利用javascript来创建和存储cookie
Apr 08 #Javascript
javascript 学习笔记(六)浏览器类型及版本信息检测代码
Apr 08 #Javascript
You might like
ThinkPHP控制器详解
2015/07/27 PHP
学习php设计模式 php实现建造者模式
2015/12/07 PHP
基于php判断客户端类型
2016/10/14 PHP
PHP在线打包下载功能示例
2016/10/15 PHP
PHP单元测试配置与使用方法详解
2019/12/27 PHP
在 Laravel 6 中缓存数据库查询结果的方法
2019/12/11 PHP
javascript操作文本框readOnly
2007/05/15 Javascript
JavaScript的parseInt 进制问题
2009/05/07 Javascript
Javascript base64编码实现代码
2011/12/02 Javascript
js对列表中第一个值处理与jsp页面对列表中第一个值处理的区别详解
2013/11/05 Javascript
JS上传图片前实现图片预览效果的方法
2015/03/02 Javascript
jQuery()方法的第二个参数详解
2015/04/29 Javascript
JS从一组数据中找到指定的单条数据的方法
2016/06/02 Javascript
Bootstrap字体图标无法正常显示的解决方法
2016/10/08 Javascript
浅谈JavaScript的计时器对象
2016/12/26 Javascript
Bootstrap3下拉菜单的实现
2017/02/22 Javascript
大白话讲解JavaScript的Promise
2017/04/06 Javascript
js实现图片上传预览原理分析
2017/07/13 Javascript
Angular中响应式表单的三种更新值方法详析
2017/08/22 Javascript
基于iview-admin实现动态路由的示例代码
2019/10/02 Javascript
vue路由的配置和页面切换详解
2020/09/09 Javascript
python连接mysql数据库示例(做增删改操作)
2013/12/31 Python
Python 使用matplotlib模块模拟掷骰子
2019/08/08 Python
解决Atom安装Hydrogen无法运行python3的问题
2019/08/28 Python
使用Filters滤镜弥补CSS3的跨浏览器问题以及兼容低版本IE
2013/01/23 HTML / CSS
利用Storage Event实现页面间通信的示例代码
2018/07/26 HTML / CSS
泰国最新活动和优惠:Megatix
2020/05/07 全球购物
数控专业大学生的自我鉴定
2013/11/13 职场文书
煤矿班组长的职责
2013/12/25 职场文书
成考报名单位证明范本
2014/01/16 职场文书
企业管理培训感言
2014/01/27 职场文书
大学毕业自我鉴定范文
2014/02/03 职场文书
班组建设经验交流材料
2014/05/12 职场文书
2014年学习全国道德模范事迹思想汇报
2014/09/15 职场文书
小学中等生评语
2014/12/29 职场文书
2015年六一儿童节活动方案
2015/05/05 职场文书