【问题标题】:Get custom rowId in jqGrid subgrid在 jqGrid 子网格中获取自定义 rowId
【发布时间】:2012-10-22 11:02:59
【问题描述】:

当我尝试展开一行父表以显示子网格时,正在传递的 ID 是由 javascript 生成的。因此,父表的第一行的 rowid 为 1,第二行的 rowid 为 2。因此,当我单击展开每个子网格时,调用的 URL 是 myurl.html?q=1myurl.html?q=2。我正在使用查询的q=? 部分来获取子网格的行。

但是,问题是我的父行以唯一的 id 存储在数据库中,这不是 1 2 3 etc. 它是 Mysql 自动生成的 id。

问题

如何更改 parentGrid 或 subGrid 的行为,以便在展开子网格时,而不是自动生成 1, 2, 3, etc.,我得到父行的实际 ID,因为它在数据库中。

【问题讨论】:

  • 您应该发送数据中行的实际 ID,您能向我们展示您的数据样本吗?

标签: jquery mysql spring jqgrid


【解决方案1】:

您曾写过“自动生成的 1、2、3 等”。它表明您以不正确的方式填充网格。从服务器返回的数据应包含id,用作行的id (<tr>),并经常命名为rowid。只有当 jqGrid 在输入数据中没有找到任何有关 rowid 的信息时,才会默认使用值 1、2、3 等。

如果你有来自数据库的 native id 和网格行,这种行为不仅是不好的。更糟糕的是,如果页面上有多个作为一个网格,或者如果您有带有子网格的网格,您可能会收到 id 重复。

所以你应该遵循两条规则:

  1. 当 id 存在时,从数据库中返回包含本地 id 的数据。
  2. 如果您使用子网格或页面上有多个网格,请使用 idPrefix

我建议您阅读the answerthis oneAnother answer 对你来说可能也很有趣。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-01
    • 1970-01-01
    相关资源
    最近更新 更多