Jqgrid子网格显示json数据中的所有项



我一直在尝试在jqgrid中实现一个简单的子网格,以显示发票的行项。我终于得到了要填充的子网格,但每个子网格都显示了相同的行项列表,这实际上是数据集中的所有条目。

我不太确定如何调试,但这里是我的一些潜在的想法-

  • json存储(不)响应GET查询的方式有问题吗?

  • 是因为我没有定义子网格数据中的哪个字段是"外键"吗?

  • 我需要subGridUrl指向json数据只有适当的数据(不是每一行项)

行项JSON示例:Order_id指向订单的id

{
  "total": 1,
  "records": 6,
  "rows": [
    {
      "description": "PART X",
      "order_id": 2,
      "qty": 5,
      ... more fields ...
      "id": 1
    },
    ... more  ...
  ],
  page: 1
}

主要网格项的JSON:

{
  "total": 1, 
  "records": 2,
  "rows": [
    {
      "order_no": 2,
      ... more fields ...
      "id": 2
    },
    ... more ...
  ],
  page:1
}

我的jqqrid脚本的适用部分:

jQuery("#mygrid").jqGrid({
    ... cosmetic stuff for main grid ...
    url: "/my_json_url/",
    datatype: "json",
    colNames:['Order',...],
    colModel:[
        {name:'order_no', index:'order_no'},
        ...
    ],
    jsonReader: {
        repeatitems:false,
        root: "rows",
        page: "page",
        total: "total",
        records: "records",
        cell: "",
        id: "id",
        subgrid: {root: "rows", cell:"", repeatitems: false}
    },
    prmNames: {subgridid: "order_id"},
    subGrid: true,
    subGridUrl: "/json_url/to_line_items/",
    subGridModel: [{ name : ['qty','description'],
                     width: [100,100] }]
})navGrid(some options);

我认为URL "/json_url/to_line_items/"下的代码不使用jqGrid发送的id参数。当用户扩展子网格时,行宽度将作为subGridUrl的附加参数。顺便说一句,我不明白为什么你使用网格的id值作为order_id。目前,如果用order_id=10扩展行,id=1参数将被附加到subGridUrl。这是你想要的吗?

相关内容

  • 没有找到相关文章

最新更新