easyui 实现动态表头

主要的思路就是:创建datagrid的时候将colums和数据当成参数,columns属性里面的field,和title通过后台传过来的数据进行循环拼接。


function  init(){


var array = [];
var arrayFields = [];
var columns = [];
$.ajax({
url : '${pageContext.request.contextPath}/*************.do/query',
type : 'POST',
data : form2Json('searchform'),
dataType : 'json',
success : function(data) {//data后台的传过来的表字段数组
console.info(data);
var areaIdArray =  data.areaId.split(',');
var areaName = data.areaName.split(',');
$(areaIdArray).each(function(index) {
arrayFields.push({
field : '',
title : '',
width : '100',
align:'center'
});
});
columns.push(arrayFields);
$(areaIdArray).each(function(index, el) {
columns[0][index]['field'] =  el;
});
$(areaName).each(function(index, el) {
columns[0][index]['title'] =  el;
});
console.info(columns);
initData(columns, data);
},
error : function(data) {
console.info(data);
}


});

}


function initData(column, data) {
$("#orderAreaCount").datagrid({
columns :  column,
fit : true,
singleSelect : true,
toolbar : '#tool',
fitColumns : false,
nowrap : true,
rownumbers : true

});
$("#orderAreaCount").datagrid('loadData', data);


}


/**
* 将表单数据转为json
*/
function form2Json(id) {
var arr = $("#" + id).serializeArray()
var jsonStr = "";


jsonStr += '{';
for (var i = 0; i < arr.length; i++) {
jsonStr += '"' + arr[i].name + '":"' + arr[i].value + '",'
}
jsonStr = jsonStr.substring(0, (jsonStr.length - 1));
jsonStr += '}'


var json = JSON.parse(jsonStr)
return json
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值