Extjs4.2 grid datastore读取xml和json

本文介绍如何使用ExtJS框架从XML和JSON源加载数据到数据存储(store)中。详细展示了创建Store实例并配置代理(proxy)来读取XML和JSON格式的数据,包括排序参数及字段定义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 读取xml文件

var store = Ext.create('Ext.data.Store', {          
        proxy: {  
            type: 'ajax',  
            url: 'js/xmlfile/messages.xml',//项目中的路径  
            reader: {  
                type: 'xml',  
                record: 'Folder'  
            }  
        },  
        sorters: ["Read"],        //以这个作为排序      
        params : {  
            Status: 'all'  
        },  
        fields: [               
  
             {name: 'URI'},  
             {name: 'DisplayName'},  
             {name: 'MessageCount'}  
  
        ]          
    });          
      
    store.load({params: {Status: 'all'}});    

2. 后台读取xml字符串(非xml对象)。

var store = Ext.create('Ext.data.Store', {          
        proxy: {  
            type: 'ajax',  
            url: '...',  
            reader: {  
                type: 'xml',  
                record: 'Folder'  
            }  
        },  
        sorters: ["Read"],        //以这个作为排序      
        params : {  
            Status: 'all'  
        },  
        fields: [  
             {name: 'URI'},  
             {name: 'DisplayName'},  
             {name: 'MessageCount'}  
        ]          
    });          
      
    store.load({params: {Status: 'all'}}); 

附上xml,可存成文件,可当作字符串返回给前台。

    <Folders>  
        <Folder>  
            <URI>/vmrest/mailbox/folders/inbox</URI>  
            <DisplayName>Inbox</DisplayName>  
            <MessageCount>3</MessageCount>  
        </Folder>  
        <Folder>  
            <URI>/vmrest/mailbox/folders/deleted</URI>  
            <DisplayName>Deleted</DisplayName>  
            <MessageCount>0</MessageCount>  
        </Folder>  
        <Folder>  
            <URI>/vmrest/mailbox/folders/sent</URI>  
            <DisplayName>Sent</DisplayName>  
            <MessageCount>0</MessageCount>  
        </Folder>  
    </Folders>  

3. 读取json

    var store = Ext.create('Ext.data.Store', {          
            proxy: {  
                type: 'ajax',  
                url: '...',  
                reader: {  
                    root: 'rows'  
                }  
            },          
            fields: [               
      
                 {name: 'URI'},  
                 {name: 'DisplayName'},  
                 {name: 'MessageCount'}  
      
      
            ]          
        });   

json字符串格式:

{rows:[{URI: 'aaa',DisplayName: 'bbb', MessageCount: 1},
       {URI: 'ccc',DisplayName: 'ddd',MessageCount: 2}]} 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值