jquery監(jiān)控數(shù)據(jù)是否變化(修正版)
更新時間:2011年04月12日 13:56:05 作者:
jquery監(jiān)控數(shù)據(jù)是否變化(修正版) 之前寫的那篇中存在許多bug,今天重新整理了一下。還請各位指教
復制代碼 代碼如下:
///<reference path="query-1.5.1.min.js" />
(function($) {
/*監(jiān)控頁面數(shù)據(jù)是否發(fā)生變化*/
var pageDataChange = false;
var tagName = "Input, Select, Textarea";
var ctrlIds = [];
$.fn.MonitorDataChange = function(options) {
var deafult = {
arrTags: tagName, //需監(jiān)控控件的tagName屬性
arrCtrls: ctrlIds //不監(jiān)控的控件ID
};
var ops = $.extend(deafult, options);
tagName = ops.arrTags;
ctrlIds = ops.arrCtrls;
/*元素第一次獲取焦點時緩存該元素數(shù)據(jù)*/
$(ops.arrTags).one("focus", function() {
if ($.inArray($(this).attr("id"), ops.arrCtrls) != -1) {
return;
}
$(this).data('initData', $(this).val());
});
};
/*獲取頁面數(shù)據(jù)是否已經(jīng)改變*/
$.fn.isChange = function() {
$(tagName).each(function() {
if ($.inArray($(this).attr("id"), ctrlIds) != -1) {
return;
}
/*如果該元素的initData緩存數(shù)據(jù)已定義并且不等于他的value值,標識該頁面中數(shù)據(jù)發(fā)生變化*/
if (typeof ($(this).data('initData')) != 'undefined') {
if ($(this).data('initData') != $(this).val()) {
pageDataChange = true;
}
}
});
return pageDataChange;
};
})(jQuery);
前臺調(diào)用:
復制代碼 代碼如下:
<script type="text/javascript">
var is_change = false;
$(document).ready(function() {
$("form").MonitorDataChange();
});
function alertMsg() {
is_change = $.fn.isChange();
if(is_change){
alert('數(shù)據(jù)發(fā)生改變!');
}
}
</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的監(jiān)控數(shù)據(jù)是否發(fā)生改變
- jquery.autocomplete修改實現(xiàn)鍵盤上下鍵自動填充示例
- jQuery scroll事件實現(xiàn)監(jiān)控滾動條分頁示例
- 基于Jquery實現(xiàn)鍵盤按鍵監(jiān)聽
- jquery.hotkeys監(jiān)聽鍵盤按下事件keydown插件
- jquery 按鍵盤上的enter事件
- 打造個性化的功能強大的Jquery虛擬鍵盤(VirtualKeyboard)
- jQuery監(jiān)控文本框事件并作相應處理的方法
- jQuery實現(xiàn)監(jiān)控頁面所有ajax請求的方法
- jQuery 監(jiān)控鍵盤一段時間沒輸入
相關(guān)文章
ligerUI的ligerDialog關(guān)閉刷新的方法
今天小編就為大家分享一篇ligerUI的ligerDialog關(guān)閉刷新的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09基于jquery實現(xiàn)的圖片在各種分辨率下未知的容器內(nèi)上下左右居中
這篇文章主要介紹了基于jquery實現(xiàn)的圖片在各種分辨率下未知的容器內(nèi)上下左右居中的方法,需要的朋友可以參考下2014-05-05從JavaScript 到 JQuery (1)學習小結(jié)
本人使用JavaScript 已經(jīng)有2年左右的時間了,一直被它簡潔優(yōu)雅的代碼所吸引, 近期接觸了 JQuery這個庫 , 感覺還不錯, 但是并不意味著要舍棄 JavaScript , 而是更宣揚結(jié)合使用 .2009-02-02