FooterData如何设置JQGrid设置Dynmaic列



iam创建jqgrid dynmamic,但我有问题。创建页脚JQGrid

call function sumarvalores()for LoadComplete中的页脚 但是当使用 $ self.jqgrid 时,不知道全球 必须使用price_num而不是全局;但是我不想在 $ self.jqgrid 中直接使用Price_num 我想创建Dynamamic页脚。

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,
    });
    }

我在这里看到的问题是您无法按照自己的方式设置对象属性。

global ='Price_Num';
$self.jqGrid("footerData", "set", {
    global : sumCanceled,
}); 

要克服这一点,您可以做

global ='Price_Num';
var footer = {};
footer[global] = sumCanceled;
$self.jqGrid("footerData", "set", footer );

希望这有帮助

才能在页脚上写入页脚行。请验证您在JQGrid中使用footerrow: true选项。

最新更新