JqG​​rid键:true不适用于具有自定义格式化程序的字段

时间:2014-01-07 08:53:40

标签: jqgrid

我有一个包含以下选项的网格,其中我想为行设置的“id”需要自定义格式化。 有两列libCodematCode。 结合这两个数据,我想为行创建Id,如下所示: -

" ;libCode=[libcode];matCode=[matCode]"

key=true选项无法使用自定义格式化程序设置数据的此字段。 它返回行号。如果没有定义xmlmap选项,或者从XML响应中返回xmlmap元素中的数据,而不是自定义格式化程序设置的数据。

我想知道为什么密钥选项不起作用,还有其他任何方法可以实现它。

这是我的网格代码:

$(function () {
$("#list").jqGrid({
    url: "./TestServlet?operation=RetrieveAll&accept=List",
    datatype: "xml",
    mtype: "GET",
    colNames: ["Lib Code", "Mat Code", "Row Id"],
    colModel: [ { name: "libCode", hidden:true, xmlmap:"libCd"},
                { name: "matCode", hidden:true, xmlmap:"matCd"},
                { name: "rowId", formatter:formatName , key:true}
              ],
    xmlReader:{
                root:"libs",
                row:"lib",
                repeatitems: false
            },
    pager: "#pager",
    rowNum: 10,
    rownumbers: true,
    rowList: [10, 20, 30],
    sortname: "libCd",
    sortorder: "desc",
    viewrecords: true,
    gridview: true,
    autoencode: true,
    loadonce: false,
    caption: "Library"
    }); 
});

   function formatName(cellValue, options, rowObject)
   {
    return " ;libCd="+$(rowObject).find('libCd').text()+";matCd="+$(rowObject).find('matCd').text();
   }

1 个答案:

答案 0 :(得分:1)

将属性loadonce设置为true而不是false,即loadonce:true。