jqGrid XML 数据属性加载

发布于 2024-12-08 20:15:42 字数 1010 浏览 0 评论 0原文

我有一个远程 XML 数据生成器,它会发出如下所示的内容:

<list>
  <hu.qualitis.opencms.utils.db.DBFile>
    <id>8dc66bf4-c39f-44c5-879d-1f3b16dc29be</id>
    <name>testfile.txt</name>
    ...
    <metadata>
      <property name="lines" value="5"/>
    </metadata>
  </hu.qualitis.opencms.utils.db.DBFile>
</list>

我对 xmlReader 的定义如下

xmlReader: { 
  root: "list",
  row: "hu\\.qualitis\\.opencms\\.utils\\.db\\.DBFile",
  repeatitems: false,
  id: "id"
},

这工作正常。 我的问题是关于我无法访问的元数据部分。我尝试过类似的事情:

colModel :[ 
  {name:'name', index:'name', width:60},
  ...
  {name:'metadata>property>lines', index:'name', width:10}
],

但无济于事。

是否可以配置 jqGrid XMLReader 来读取此值,或者我是否被迫更改生成器?

更新

总结一下大家的回复:我原来的想法是不可能实现的。
最好的解决方案是使用 JSON。这也会更快。
另一种解决方案是修改生成 XML 的代码。我会同意这一点,因为我所有的通信都是基于 XML。
另一种解决方案是使用 XSLT 修改 XML。

I have a remote XML data generator which emits something like this:

<list>
  <hu.qualitis.opencms.utils.db.DBFile>
    <id>8dc66bf4-c39f-44c5-879d-1f3b16dc29be</id>
    <name>testfile.txt</name>
    ...
    <metadata>
      <property name="lines" value="5"/>
    </metadata>
  </hu.qualitis.opencms.utils.db.DBFile>
</list>

my definition of the xmlReader is as follows

xmlReader: { 
  root: "list",
  row: "hu\\.qualitis\\.opencms\\.utils\\.db\\.DBFile",
  repeatitems: false,
  id: "id"
},

This works OK.
My problem is about the metadata part which I cannot access. I tried things like:

colModel :[ 
  {name:'name', index:'name', width:60},
  ...
  {name:'metadata>property>lines', index:'name', width:10}
],

but to no avail.

Is it possible at all to configure the jqGrid XMLReader to read this value, or am I forced to change the generator?

Update

To sum up the responses: my original idea is not possible to implement.
The best solution would be to use JSON. This would be faster also.
An alternative solution is to modify the code which generates the XML. I will go with this, as all my communication is based on XML.
And another solution is to modify the XML with XSLT.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

荒芜了季节 2024-12-15 20:15:43

您访问节点的属性时,需要在 colModel 的 xmlmap 中的方括号 [name] 中指定属性名称,例如:-

对于节点,

节点属性的 name 属性将需要 xmlmap:"metadata>property>[name]"

值节点属性的属性需要 xmlmap:"metadata>property>[value]"

You access attributes of nodes you need to specify the attribute name in square brackets [name] in the xmlmap of the colModel e.g.:-

for node

the name attribute of node property would require xmlmap:"metadata>property>[name]"

the value attribute of node property would require xmlmap:"metadata>property>[value]"

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文