您的位置:首页 > Web前端 > JavaScript

js 页面值变动监听

2016-03-29 20:58 465 查看
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;
}

这里只是一个引子,可以再进一步封装成独立的组件,时间允许时,会再改造。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: