jquery监控数据是否变化(修正版)
2011-04-12 00:00
197 查看
///<reference path="query-1.5.1.min.js" /> (function($) { /*监控页面数据是否发生变化*/ var pageDataChange = false; var tagName = "Input, Select, Textarea"; var ctrlIds = []; $.fn.MonitorDataChange = function(options) { var deafult = { arrTags: tagName, //需监控控件的tagName属性 arrCtrls: ctrlIds //不监控的控件ID }; var ops = $.extend(deafult, options); tagName = ops.arrTags; ctrlIds = ops.arrCtrls; /*元素第一次获取焦点时缓存该元素数据*/ $(ops.arrTags).one("focus", function() { if ($.inArray($(this).attr("id"), ops.arrCtrls) != -1) { return; } $(this).data('initData', $(this).val()); }); }; /*获取页面数据是否已经改变*/ $.fn.isChange = function() { $(tagName).each(function() { if ($.inArray($(this).attr("id"), ctrlIds) != -1) { return; } /*如果该元素的initData缓存数据已定义并且不等于他的value值,标识该页面中数据发生变化*/ if (typeof ($(this).data('initData')) != 'undefined') { if ($(this).data('initData') != $(this).val()) { pageDataChange = true; } } }); return pageDataChange; }; })(jQuery);
前台调用:
<script type="text/javascript"> var is_change = false; $(document).ready(function() { $("form").MonitorDataChange(); }); function alertMsg() { is_change = $.fn.isChange(); if(is_change){ alert('数据发生改变!'); } } </script> <input type="text"/> <input type="text" /> <input type="text" /> <input type="text" /> <asp:TextBox runat="server"></asp:TextBox> <asp:CheckBox runat="server" /> <input type="button" value="true" onclick="alertMsg();"/>
相关文章推荐
- jquery监控数据是否变化(修正版)
- jquery监控数据是否变化(修正版)
- 基于jquery的监控数据是否发生改变
- Jquery-判断form表单数据是否变化
- jquery监控数据是否发生改变
- JQuery监控数据是否发生改变,以便提醒客户离开时是否需要保持信息
- Jquery判断form表单数据是否变化
- jquery 判断数据是否在数组中
- 结合JQuery Flot组件的工业动态数据Web监控
- jquery中监控input文本框值的变化触发函数
- kafkaoffsetmonitor监控topic的logsize和offset数据没有变化
- sqlDependency监控数据库数据变化,自动通知
- oracle 12c 中asm元数据是否有所变化
- 监控数据库表变化
- 如何监听Angularjs列表数据是否渲染完毕,配合jQuery操作DOM,指令的规范
- jquery如何判断表格同一列不同行input数据是否重复
- 检查form表单数据是否发生变化
- 实时监控文本框中的数据变化(完美解决方案)
- 1、Jquery form表单ajax提交 2、jquery.filter校验多个相同类型的文本框是否输入数据有重复