`
编程足球
  • 浏览: 251677 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

Ext.data.XmlReader 的基本用法

    博客分类:
  • Ext
阅读更多
xmlData.xml文件:
  <?xml version="1.0" encoding="utf-8"?>
  <Items>
   	<Item>
	    <id>1</id>
		<name>测试1</name>
		<count>1</count>
	 	<lasttime>01/28/2011</lasttime>
		<type>配置指导 </type>

   	</Item>
   	<Item>
	    <id>2</id>
		<name>测试2</name>
		<count>2</count>
	 	<lasttime>11/28/2011</lasttime>
		<type>配置指导 </type>
   	</Item>
   	<Item>
	    <id>3</id>
		<name>测试3</name>
		<count>3</count>
	 	<lasttime>11/28/2011</lasttime>
		<type>配置指导 </type>
   	</Item>
  </Items>




读取xml数据的脚本文件 XmlReader_Array.js:
  /**
 * 使用xml文件保存数据
 */
var mxlStore_array = new Ext.data.Store({
        
        proxy : new Ext.data.HttpProxy({url: 'js/xmlData.xml'}),
        reader: new Ext.data.XmlReader({
//        		该属性是指定包含所有行对象的数组。
               	record: 'Item',  
               	
//      		该属性是指定每一个行对象中究竟哪一个是记录的ID字段(可选的)。
               	id:'id'
             },
             [          
                {name: 'name',   type: 'string', mapping:'name'},
                {name: 'count',  type: 'int',    mapping:'count'},
                {name: 'type',   type: 'string', mapping:'type'},             
                {name: 'date',   type: 'date',   mapping:'lasttime',dateFormat: 'm/d/Y'},
            ]),
           sortInfo:{field:'date',direction:'asc'}
    });
	mxlStore_array.load();
	grid_xml_array = new Ext.grid.GridPanel({
	    
        autoScroll:true,
        border: true,
        store:mxlStore_array,
        stripeRows:true,
//        自动创建列模型(ColumnModel)的数组,即每列要显示的内容
        columns: [
        	{
		        header: '文档名称',
		        dataIndex: 'name',
				sortable:true,
		        width: 300
	   		},{
		        header: '更新次数',
		        dataIndex: 'count',
				sortable:true,
		        width: 100
	     	},{
		        header: '最近更新时间',
		        dataIndex: 'date',
				sortable:true,
		        width: 150,
		        type: 'date'
	    	},{
		        header: '类型',
		        dataIndex: 'type',
				sortable:true,
		        width: 100
	    	}],
			sm: new Ext.grid.RowSelectionModel({singleSelect: true})
    });




或者使用另外一种方法XmlReader_Object.js:
  /**
 * 生成一个构造函数,该函数能产生符合规定的Record对象。
 */
var docData = new Ext.data.Record.create(
		 	[  
                {name: 'name',   type: 'string', mapping:'name'},
                {name: 'count',  type: 'int',    mapping:'count'},
                {name: 'type',   type: 'string', mapping:'type'},             
                {name: 'date',   type: 'date',   mapping:'lasttime',dateFormat: 'm/d/Y'},
            ]
		);
		
/**
 * Store类封装了一个客户端的Record对象的缓存, 
 * 为诸如GridPanel、ComboBox和DataView等的小部件提供了数据的入口。
 */
var mxlStore_Obj = new Ext.data.Store({
        proxy : new Ext.data.HttpProxy({url: 'js/xmlData.xml'}),
        reader: new Ext.data.XmlReader(
//        		元数据配置参数。
	        	{
//	       			该属性是指定包含所有行对象的数组。
	               	record: 'Item',  
//	      			该属性是指定每一个行对象中究竟哪一个是记录的ID字段(可选的)。
	               	id:'id'
	             },
					docData
			),
           sortInfo:{field:'date',direction:'asc'}
    });
	mxlStore_Obj.load();

/**
 * 定义一个测试的表
 */
	grid_xml_obj = new Ext.grid.GridPanel({
	    
        autoScroll:true,
        border: true,
        store:mxlStore_Obj,
        stripeRows:true,
//      自动创建列模型(ColumnModel)的数组,即每列要显示的内容
      columns: [
        	{
		        header: '文档名称',
		        dataIndex: 'name',
				sortable:true,
		        width: 300
	   		},{
		        header: '更新次数',
		        dataIndex: 'count',
				sortable:true,
		        width: 100
	     	},{
		        header: '最近更新时间',
		        dataIndex: 'date',
				sortable:true,
		        width: 150,
		        type: 'date'
	    	},{
		        header: '类型',
		        dataIndex: 'type',
				sortable:true,
		        width: 100
	    	}],
			sm: new Ext.grid.RowSelectionModel({singleSelect: true})
    });


进行测试的html文件:
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>Ext读取mxl文件测试.html</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <link rel="stylesheet" type="text/css" href="resources/css/ext-all.css">  
    <script type="text/javascript" src="adapter/ext/ext-base.js"></script>  
    <script type="text/javascript" src="ext-all.js"></script>      
  	<script type="text/javascript" src="js/XmlReader_Array.js"></script>
  	<script type="text/javascript" src="js/XmlReader_Object.js"></script>
  	<script type="text/javascript">
  	    Ext.onReady(function(){
  	    	grid_xml_array.render("grid_array");
  	    	grid_xml_obj.render("grid_obj");
  	    });
	</script> 
  </head>
  <body>
    <div id="grid_array"></div>
    <div id="grid_obj"></div>
  </body>
</html>


分享到:
评论

相关推荐

    EXT核心API详解

    33、Ext.data.JsonReader类 …………… 26 34、Ext.data.XmlReader类 …………… 27 35、Ext.data.Store类 …………………… 28 36、Ext.data.GroupingStore类 ………… 32 37、Ext.data.SimpleStore类 ………… 34 ...

    ExtJS入门教程(超级详细)

    33、Ext.data.JsonReader类 …………… 26 34、Ext.data.XmlReader类 …………… 27 35、Ext.data.Store类 …………………… 28 36、Ext.data.GroupingStore类 ………… 32 37、Ext.data.SimpleStore类 ………… 34 ...

    Video8.Demo1.XmlReader

    Video8.Demo1.XmlReader

    精通JS脚本之ExtJS框架.part1.rar

    13.6.4 Ext.data.XmlReader 13.7 Ext.ux.DWR 13.7.1 Ext.data.DwrProxy 13.7.2 Ext.data.DWRTreeLoader 13.7.4 Web服务端配置 13.7.5 服务层接口 第14章 ExtJS扩展 14.1 利用Ext.extend实现继承 14.2 与...

    精通JS脚本之ExtJS框架.part2.rar

    13.6.4 Ext.data.XmlReader 13.7 Ext.ux.DWR 13.7.1 Ext.data.DwrProxy 13.7.2 Ext.data.DWRTreeLoader 13.7.4 Web服务端配置 13.7.5 服务层接口 第14章 ExtJS扩展 14.1 利用Ext.extend实现继承 14.2 与...

    Ext深入浅出 数据传输

    10.1 Ext.data简介............................................230 10.2 Ext.data.Connection....................230 10.3 Ext.data.Record .............................232 10.4 Ext.data.Store ................

    Ext+JS高级程序设计.rar

    7.3 Ext.data.Record 198 7.4 ArrayReader、JsonReader和XmlReader 199 7.4.1 JsonReader 200 7.4.2 ArrayReader 200 7.4.3 XmlReader 201 7.5 Store的加载数据 201 7.6 Store的数据操作 203 7.6.1 添加数据 203 ...

    基于extjs的.NET3.5控件Coolite 1.0.0.34580(Preview预览版)

    1. Renamed Coolite.Ext.Web project to Ext.Net 2. Renamed Coolite.Examples project to Ext.Net.Examples 3. Renamed Coolite.Ext.UX project to Ext.Net.UX 4. Renamed Coolite.EmbeddedResourceBuilder ...

    ext js解析xml文档

    Extjs解析xml问题 Ext.onReady(function(){    var store=new Ext.data.Store({  ... reader:new Ext.data.XmlReader(  {record:'Item'},   ["ASIN","Author","Manufacturer","ProductGroup","Title"])  });

    Ext 开发指南 学习资料

    8.4. Ext.data命名空间 8.4.1. proxy系列 8.4.1.1. 人畜无害MemoryProxy 8.4.1.2. 常规武器HttpProxy 8.4.1.3. 洲际导弹ScriptTagProxy 8.4.2. reader系列 8.4.2.1. 简单易行ArrayReader 8.4.2.2. 灵活轻便...

    ext读取两种结构的xml的代码

    &lt;?xml version=”1.0″ encoding=”utf-8″ ?&gt; &lt;list&gt; &lt;software&gt; 软件1&lt;/name&gt; &lt;icon&gt;1.gif&lt;/icon&gt; &lt;/software&gt; &lt;software&gt; 控件2&lt;/name&gt; &lt;icon&gt;2.gif&lt;/icon&gt; ... reader=new Ext.data.XmlReader({ record: ‘s

    EXT2.0中文教程

    8.4. Ext.data命名空间 8.4.1. proxy系列 8.4.1.1. 人畜无害的MemoryProxy 8.4.1.2. 常规武器HttpProxy 8.4.1.3. 洲际导弹ScriptTagProxy 8.4.2. reader系列 8.4.2.1. 简单易行ArrayReader 8.4.2.2. 灵活轻便...

    EXT教程EXT用大量的实例演示Ext实例

    8.4. Ext.data命名空间 8.4.1. proxy系列 8.4.1.1. 人畜无害的MemoryProxy 8.4.1.2. 常规武器HttpProxy 8.4.1.3. 洲际导弹ScriptTagProxy 8.4.2. reader系列 8.4.2.1. 简单易行ArrayReader 8.4.2.2. 灵活轻便...

    extjs DataReader、JsonReader、XmlReader的构造方法

    DataReader、JsonReader、XmlReader的构造方法,需要的朋友可以参考下。

    Video8.AllDemo

    Video8.Demo1.XmlReader

    Java解析XML文档(二):sax读取xml文件导出excel

    NULL 博文链接:https://suky.iteye.com/blog/621169

    j2me处理xml的jar包(kxml2-2.3.0.jar)

    j2me开发时解晰xml时用到的jar包

    2_XMLreader.cs

    2_XMLreader.cs

    php xmlReader & xmlWriter

    php xmlReader & xmlWriter

Global site tag (gtag.js) - Google Analytics