原文地址;http://www.letuknowit.com/archives/102
Extjs中,用XmlReader可以很方便地读取xml文件的数据显示在GridPanel中。需要注意是不同结构的xml,取值的方式有所不同。如果取节点的子节点的内容,则直接写子节点名称;若取节点的属性,则是符号@加属性名称;若取节点的内容,则留空即可。举2个例子如下:
如果我们要读取的xml数据都在节点的子节点,比如:
则XmlReader中的mapping直接写子节点的名称或令name与子节点的名称一致,则mapping可忽略,如下:
var store = new Ext.data.Store({
url: ‘sheldon.xml’,
reader: new Ext.data.XmlReader({
record: ‘Item’
}, [
{name: 'Author', mapping: 'Author'},
{name: 'Title'},
'Manufacturer',
'ProductGroup'
])
});
如果我们要读取的xml数据有的是节点的内容有的是节点的属性,比如:
则XmlReader中的mapping的写法如下:
{name: ‘Author’, mapping: ‘@Author’}, //取节点的属性
{name: ‘Manufacturer’, mapping: ‘@Manufacturer’},
{name: ‘ProductGroup’, mapping: ‘@ProductGroup’}
{name: ‘Title’, mapping: ”}, //取节点的内容
用XmlReader读取xml文件很方便吧,O(∩_∩)O~