1、初始化值map对象
var compareMap = {};// 定义全局变量
function initCompareMap(context){//context 为指定要初始化的区域,即上下文
setTimeout(function(){
// 查找该域所有表单元素,过滤分页的、按钮和class含‘.ignore’的表单元素
$(":input",context).not(".easyui-pagination :input,[type='button'],button,.ignore",context).each(function(){
var obj = $(this);
var compareFlag = obj.attr("compareFlag");
if(compareMap[randomValue]){
}else{
var randomValue = "r_"+Math.round(Math.random()*1000000000);
obj.attr("compareFlag",randomValue);
compareMap[randomValue] = obj.val();
}
});
},1500);
}
2、调用值对比方法
function compareAllInput(selector,context){// selector: 过滤掉的元素,jquery选择器格式;context:区域,即上下文
var msg = "",selectors = selector || "",ct = context || document;
$("[compareFlag]",ct).not(selectors).each(function(){
var obj = $(this);
var compareFlag = obj.attr("compareFlag");
if(compareMap[compareFlag] == obj.val()){
}else{
// 假如是table格式,获取输入域的小标题
msg += obj.parents("td:first").prev().text() + "值有变动<br/>";
};
});
return msg;
}
这里只是一个引子,可以再进一步封装成独立的组件,时间允许时,会再改造。