3

您如何使用 jqGridloadonce:truedatatype:json在 jqGrid 中获取页面中的所有 id?

4

2 回答 2

2

您可以使用该data选项直接检索网格数据:

 myGrid.jqGrid('getGridParam', 'data');

然后,您将需要迭代data以检索您的每个 ID。

于 2012-09-11T15:24:01.950 回答
2

您需要获取_indexjqGrid 的参数。它是具有 id 作为属性的对象。如果您需要一个 id 数组(如getDataIDs方法),您可以执行以下操作

var id, ids = [], indexes = $("#grid").jqGrid("getGridParam", "_index");
for (id in indexes) {
    if (indexes.hasOwnProperty(id)) {
        ids.push(id);
    }
}

ids代码用本地网格的 id填充数组。

顺便说一句,_index对象的值(如上面的 for 循环中)包含数组indexes[id]中相应数据对象的索引。$("#grid").jqGrid("getGridParam", "data")

例如,如果您将使用如下数据填充网格

var myData = [
        {id: "x", name: "abc", age: "12"},
        {id: "y", name: "def", age: "34"}
    ];
$("#grid").jqGrid({
    data: myData,
    datatype: "local",
    colModel: [{name: "name"}, {name: "age"}]
});

那么$("#grid").jqGrid("getGridParam", "_index")将是对象

{
    x: 0, // index of the data for the item having id="x"
    y: 1  // index of the data for the item having id="y"
}

并且$("#grid").jqGrid("getGridParam", "data")将是数组

[
    {name: "abc", age: "12"}
    {name: "def", age: "34"}
]
于 2012-09-11T16:07:01.227 回答