DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> jQuery入門知識 >> JQuery特效代碼 >> jquery監控數據是否變化(修正版)
jquery監控數據是否變化(修正版)
編輯:JQuery特效代碼     
代碼如下:
///<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();"/>
XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved