footerdata 如何设置 jqgrid 设置动态列
Posted
技术标签:
【中文标题】footerdata 如何设置 jqgrid 设置动态列【英文标题】:how footerdata set jqgrid set dynmaic column 【发布时间】:2018-03-15 21:38:31 【问题描述】:我创建 jqgrid dynmamic 但我有问题。创建页脚 jqgrid 时
在 loadComplete 中为页脚调用函数 sumarValores() 但是在使用 $self.jqGrid 时不知道全局 必须使用 Price_Num 而不是全局;但我不想在 $self.jqGrid 中直接使用 Price_Num 我想创建动态页脚。
dataArray = [ id_R: 1, Name_c: "dummy1", AddDate_D: "1394/07/27", Price_Num: "10000" , id_R: 2, Name_c: "dummy2", AddDate_D: "1394/07/28", Price_Num: "120000" ,
]; 这是我的代码
$('#list').jqGrid(
caption: "",
datatype: 'local',
colNames: getColNames(dataArray[0]),
colModel: getColModels(dataArray[0]),
footerrow : true,
loadComplete: function ()
sumarValores($(this))
,
);
function sumarValores($self)
var sumaHa = 0;
var columnNames = jQuery("#list").jqGrid('getGridParam', 'colNames');
var global;
for (var z = 0; z < columnNames.length; z++)
var colN = columnNames[z];
if (colN == "Price")
colN = colN.concat('_Num');
global = colN;
var sumCanceled = $self.jqGrid("getCol", colN, false, "sum");
break;
alert(colN);
global ='Price_Num';
$self.jqGrid("footerData", "set",
global : sumCanceled,
);
【问题讨论】:
【参考方案1】:我在这里看到的问题是您无法按照自己的方式设置对象属性。
global ='Price_Num';
$self.jqGrid("footerData", "set",
global : sumCanceled,
);
要克服这个问题,你可以这样做
global ='Price_Num';
var footer = ;
footer[global] = sumCanceled;
$self.jqGrid("footerData", "set", footer );
希望对你有帮助
【讨论】:
【参考方案2】:为了能够在页脚中书写,您需要有页脚行。请确认您在 jqGrid 中使用了footerrow: true
选项。
【讨论】:
我使用 footerrow : true, @saeed3164:您应该发布您使用的代码。原码没有footerrow : true
!!!同样,您使用的其他选项也不清楚。例如,您是否使用data
选项?如何以及何时填充要汇总并放在页脚中的数据?下一个问题:您通过footerData
方法设置global
属性。你在colModel
中有可见的列吗?你也不贴。您使用哪个版本的 jqGrid 以及来自哪个 jqGrid 分支?最好是在 jsfiddle 中准备演示,例如,演示问题。以上是关于footerdata 如何设置 jqgrid 设置动态列的主要内容,如果未能解决你的问题,请参考以下文章