如何将属性格式的 XML 读入 ExtJS 存储,其中键/值在一行中指定为 id/value?我更熟悉下面给出的第二种格式。
<?xml version="1.0" encoding="UTF-8"?> <XMLResponse> <数据> <行> <column id="title" value="星球大战"/> <column id="director" value="卢卡斯"/> <column id="year" value="1977"/> </行> <行> <column id="title" value="Jaws"/> <column id="director" value="斯皮尔伯格"/> <column id="year" value="1975"/> </行> </数据> </XMLResponse>
更传统的 XML 编写方式。
<?xml version="1.0" encoding="UTF-8"?> <XMLResponse> <数据> <行> <title>星球大战</title> <导演>卢卡斯</导演> <year>1977</year> </行> <行> <title>大颚</title> <director>斯皮尔伯格</director> <year>1975</year> </行> </数据> </XMLResponse>
它没有很好的记录,但字段的映射可以是Ext.dom.Query接受的任何表达式。因此,如果您通常有一个简单的“title”映射来选择名为“title”的子标签,则可以包含一个更复杂的选择器。在这种情况下,您想要选择“列”标签的“值”属性,其 ID 属性与您要查找的字段名称匹配,因此在模型或商店中,您可以像这样定义字段:
fields: [
{ name: 'title', mapping: 'column[id=title]@value' },
{ name: 'director', mapping: 'column[id=director]@value' },
{ name: 'year', mapping: 'column[id=year]@value' }
],
Run Code Online (Sandbox Code Playgroud)