jqGrid XML数据属性加载

时间:2011-10-05 15:44:44

标签: jqgrid xmlreader

我有一个远程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。

1 个答案:

答案 0 :(得分:0)

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

表示节点

node属性的name属性需要xmlmap:“metadata&gt; property&gt; [name]”

node属性的value属性需要xmlmap:“metadata&gt; property&gt; [value]”