Ext Js 3.x中表格Grid的学习和实例

1:基本知识

  grid由一下几个部分组成:

   *数据(data)

    数据有几种格式:Array、JSON、XML等

   *存储器(store)

    Ext中store是个很重要的类,它的主要作用是将数据从data中读出来,供grid使用。对应与数据,JSON、XML等数据格式,Ext。data。Store有几个子类:

  ArrayStore、JsonStore、XmlStore等,这些子类是在Ext。data。store基础上封装的类,用于读取对应的数据

   Ext.data.Store是ExtJs中用来进行数据交换和数据交互的标准中间件,无论是Grid还是ComboBox,都是通过它实现数据读取,类型转换,排序分页和搜索等操作的,

 它提供了一个Ext.data.Record数组,所有数据都存放在这些Ext.data.Record实例中,为后面的读取和操作做准备

   *列模型(ColumnModel)

    列模型规定了表格显示时列的顺序,包含了列所需的信息

   *grid面板(Ext.grid.GridPanel)

    gridPanel就是容纳数据并显示出来的容器,可以将其认为相当于HTML中的Table标签

2:程序代码

  

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>gridPanel</title>
    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	
	<link rel="stylesheet" type="text/css" href="ext3.2/resources/css/ext-all.css"></link>
	<script type="text/javascript" src="ext3.2/adapter/ext/ext-base.js"></script>
	<script type="text/javascript" src="ext3.2/ext-all.js"></script>
	<script type="text/javascript" src="ext3.2/src/local/ext-lang-zh_CN.js"></script>
	
	<script type="text/javascript">
	  Ext.onReady(function() {   //定义ColumnModel
		var cum = new Ext.grid.ColumnModel([
		{header: '客户ID', dataIndex: 'memid'},
		{header: '客户姓名', dataIndex: 'memName'},
		{header: '性别', dataIndex: 'sex'},
		{header: '跟踪号', dataIndex: 'gcode'},
		{header: '日期', dataIndex: 'kdtime'}
		]);
		
		var cumdata = [   //定义数据
		   ['1', 'hello', '男', '1', '2010-05-22'],
		   ['2', 'ASP', '女', '2', '2010-06-07'],
		   ['3', 'JSP', '男', '3', '2011-05-05'],
		   ['4', 'Java', '男', '5', '2011-07-05'],
		   ['5', 'ExtJs', '男', '5', '2011-06-01'],
		   ['6', '.Net', '女', '6', '2011-09-03']
		];
		
		var store = new Ext.data.Store({
			proxy: new Ext.data.MemoryProxy(cumdata),
			reader: new Ext.data.ArrayReader({}, [
			   {name: 'memid'},
			   {name: 'memName'},
			   {name: 'sex'},
			   {name: 'gcode'},
			   {name: 'kdtime'}
			])
		});
		
		store.load();
		
		var cumgrid = new Ext.grid.GridPanel({
			renderTo: 'cumGrid',
			store: store,
			height: 200,
			width: 500,
			colModel: cum
		});
	});
	</script>
  </head>
  
  <body>
    <div id="cumGrid"> </div>
  </body>
</html>

3:程序效果图

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

波哥的技术积累

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值