bianle
11/15/2017 - 8:05 AM

js封装springmvc参数对象

/**
 * springmvc参数bean。
 *
 * 作用:
 * 把json数组:
 * [{salesOrgCode:"1",salesOrgName:"销售组织1"},{salesOrgCode:"2",salesOrgName:"销售组织2"}],
 * 封装成springmvc可解析的简单对象格式:
 * {saleOrg[0].id: 1, saleOrg[0].name: "销售组织1", saleOrg[1].id: 2, saleOrg[1].name: "销售组织2"}
 *
 * 示例:
 * var paramBean = new ParamBean("saleOrg");
 * paramBean.add({salesOrgCode:'1',salesOrgName:'销售组织1'});
 * paramBean.add({salesOrgCode:'2',salesOrgName:'销售组织2'});
 * ...
 * var param = paramBean.getInstance();
 *
 * @param beanName
 * @author bianle/15081504
 */
function ParamBean(beanName){
	this.instance = {};
	this.targetArray = [];
	this.add = function(target){
		this.targetArray.push(target);
	};
	this.getInstance = function(){
		if (this.targetArray && this.targetArray.length > 0) {
			for (var i = 0; i < this.targetArray.length; i++) {
				var target = this.targetArray[i];
				for (var j in target) {
					if (target.hasOwnProperty(j)) {
						this.instance[beanName+'[' + i + '].'+j] = target[j];
					}
				}
			}
		}
		return this.instance;
	}
}