sencha touch 2:如何在xml文件中读取记录节点的值

时间:2013-05-17 01:22:49

标签: xml sencha-touch-2 nodevalue

在提问之前,我发现有一个类似的问题:Sencha Touch 2, nested XML parsing nodeValue 我使用模型/代理从xml文件加载数据,几乎成功,但有一个问题,我无法读取xml文件中的记录节点的值。 我的xml文件喜欢这个: myRecord.js

コード:

<records>
    <record attribute='a' id='1'>A</record>
    <record attribute='b' id='2'>B</record>
    <record attribute='c' id='3'>C</record>
</record>

我的模特喜欢这个:

コード:

Ext.define('RecordModel',{
    extend: 'Ext.data.Model',
    config: {
         fields: [
             {name: 'recoreAttr', mapping: '@attribute', type:'string'}
             {name: 'recordId', mapping: '@id', type:'string'}
             {name: 'recordName', mapping: 'record', type:'string'}
          ],
         proxy: {
             type:'ajax',
             url: 'myRecord.js'
             reader: {
                  type:'xml';
                  rootProperty:'records'
                  record:'record',           // only occurs for the node configed here
             }
         }
    }
})

然后我创建一个'RecordModel'存储并调用load()方法,我发现属性(我的xml文件中的a,b,c)和id(我的xml文件中的1,2,3)是正确的读。但是没有读取之间的值(我的xml文件中的A,B,C)。我认为必须是我的映射格式是错误的,但我不知道正确的映射格式是什么样的。 这个问题只发生在代理中被称为'record'的节点上,如果thre是记录节点中的嵌套节点,则可以成功读取该值。

<records>
    <record attribute='a' id='1'>A</record>
    <record attribute='b' id='2'>B</record>
    <record attribute='c' id='3'>C</record>
    <record attribute='c' id='3'>
        <nested>D</nested>
    </record>
</record>

嵌套节点值'D'可以读取。

0 个答案:

没有答案