我有问题......
我有一个显示一些数据的jqgrid,但列是动态的。电网运行良好。这是我的代码:
...
var colMode = [];
...
var columnas = data.d;
$.each(columnas, function (index, col) {
...
colMode.push({ name: col.ColumnName, index: col.ColumnName, width: '100%', align: 'right' });
...
$("#gridCalendario").jqGrid({
datatype: function (pdata) { getData(pdata); },
height: 'auto',
colModel: colMode,
....
问题是我想在页脚上显示数据,但我不能这样做,因为我不知道如何指示动态列的名称。以下代码显示了我是如何尝试的:
function sumarValores() {
var sumaHa = 0;
var columnNames = jQuery("#gridCalendario").jqGrid('getGridParam', 'colNames');
$('#gridCalendario').jqGrid('footerData', 'set', { Items: 'TOTAL:' });
for (var z = 0; z < columnNames.length; z++) {
var colN = columnNames[z];
$('#gridCalendario').jqGrid('footerData', 'set', { colN: parseFloat(sumaHa).toFixed(2) });
}
}
有人能帮助我吗?
答案 0 :(得分:1)
我用以下功能解决了这个问题:
function sumarValores() {
var sumaHa = 0;
var columnNames = jQuery("#gridCalendario").jqGrid('getGridParam', 'colNames');
$('#gridCalendario').jqGrid('footerData', 'set', { Items: 'TOTAL CUENTA:' });
for (var z = 0; z < columnNames.length; z++) {
var colN = columnNames[z];
var obj = '[{"' + colN + '": "' + parseFloat(sumaHa).toFixed(2) + '"}]';
var colFoot = JSON.parse(obj);
$('#gridCalendario').jqGrid('footerData', 'set', colFoot[0]);
}
}