`
jsczxy2
  • 浏览: 1275394 次
  • 性别: Icon_minigender_1
  • 来自: 常州
文章分类
社区版块
存档分类
最新评论

EXT 3.x 使用详解之Ext.grid.GridPanel(二)

    博客分类:
  • ext
阅读更多

本篇主要讲解了grid如何自动调整大小,以便在我们窗口发生变化的时候grid能够自动调整。主要看代码吧,注释很清楚了!

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%@ page pageEncoding="UTF-8"%>
<html>
<head>
<style type="text/css">
	
	html,body{
	margin:0px;
	height:100%;
	}
	
	#content{
	height:100%;
	width:100%;
	}
</style>

</head>
	<body style="height:100%">
	<script type="text/javascript">
	var grid;
	
	var cm;
	
	var ds;
	
	//性别详细
	function renderSex(value) {
		if (value == 'male') {
		return "<span style='color:red;font-weight:bold;'>男</span>";
		} else {
		return "<span style='color:green;font-weight:bold;'>女</span>";
		}
	}
	
	//描述详细
	function renderDescn(value, cellmeta, record, rowIndex, columnIndex,store){
		var str = (rowIndex+1)+"行|"+(columnIndex+1)+"列";
		return str;
	}
	
	//页面完成后加载
	Ext.onReady(function()
		{
	//对列的定义
	cm = new Ext.grid.ColumnModel([
		{header:'<font color="blue">编号</font>',width: Ext.get("content").getWidth()/4,sortable:true,dataIndex:'id'},//sortable 可排序,具体体现在有排序选项卡
		{header:'<font color="blue">性别</font>',width: Ext.get("content").getWidth()/4,dataIndex:'sex',renderer:renderSex},
		{header:'<font color="blue">名称</font>',width: Ext.get("content").getWidth()/4,dataIndex:'name'},
		{header:'<font color="blue">描述</font>',width: Ext.get("content").getWidth()/4,dataIndex:'descn',renderer:renderDescn}
	]);
	
	//二维数组的数据,Json数据结构
	var data = [
		['1','male','name1','descn1'],
		['2','female','name2','descn2'],
		['3','male','name3','descn3'],
		['4','female','name4','descn4'],
		['5','male','name5','descn5']
	];
	
	//解释二维数组
	//proxy告诉我们从哪里获得数据,reader告诉我们如何解析这个数据
	 ds = new Ext.data.Store({
		proxy: new Ext.data.MemoryProxy(data),
		//Ext.data.ArrayReader专门用来解析数组,绑定与cm的dataIndex相对应
		reader: new Ext.data.ArrayReader({}, [
			{name: 'id'},
			{name: 'sex'},
			{name: 'name'},
			{name: 'descn'}
		])
	});
	//加载dataStore
	ds.load();
	//创建grid对象
	grid = new Ext.grid.GridPanel({
		renderTo: 'content',//渲染到具体div
		//获得div的宽和高,以便计算并自动伸缩比例,用来控制grid的各个列宽和整个grid的高度
		width: Ext.get("content").getWidth(),
		height: Ext.get("content").getHeight(), 
		//绑定ds和cm
		store: ds,
		cm: cm
	});
	});
	//自动适应浏览器窗口调整
	window.onresize=function(){
		grid.destroy();
		cm = new Ext.grid.ColumnModel([
		//对列进行比例分配,以便在窗口放大和缩小时候进行相对比例计算,以便自动调整grid的列宽和高度
			{header:'<font color="blue">编号</font>',width: Ext.get("content").getWidth()/4,sortable:true,dataIndex:'id'},
			{header:'<font color="blue">性别</font>',width: Ext.get("content").getWidth()/4,dataIndex:'sex',renderer:renderSex},
			{header:'<font color="blue">名称</font>',width: Ext.get("content").getWidth()/4,dataIndex:'name'},
			{header:'<font color="blue">描述</font>',width: Ext.get("content").getWidth()/4,dataIndex:'descn',renderer:renderDescn}
		]);
        grid = new Ext.grid.GridPanel({
			width: Ext.get("content").getWidth(),
			height: Ext.get("content").getHeight(), 
			store: ds,
			cm: cm
		});
		grid.render(Ext.get("content"));
	};
    </script>
    
<div id="content">
<div>

	</body>
</html>
2
0
分享到:
评论

相关推荐

    Ext.grid.GridPanel属性祥解

    `Ext.grid.GridPanel`是ExtJS中用于展示表格数据的核心组件之一。它提供了丰富的配置选项和方法来帮助开发者灵活地控制表格的表现形式及功能。对于初学者或者希望深入理解`GridPanel`特性的Web开发人员来说,掌握其...

    ExtJs选中var editor = new Ext.ux.grid.RowEditor详解

    ### ExtJs选中 `var editor = new Ext.ux.grid.RowEditor` 详解 在Web开发领域,特别是使用ExtJs框架进行复杂用户界面构建时,`RowEditor` 是一个非常实用的功能,它允许用户直接在表格行内编辑数据,极大地提高了...

    Ext2.0框架的grid使用

    ### Ext2.0框架的Grid使用详解 #### 引言 在前端开发领域,Ext2.0框架以其强大的功能和灵活的组件库而备受推崇,尤其是其Grid组件,更是前端开发者构建美观、交互性强的数据展示界面的利器。本文将深入探讨Ext2.0...

    GridPanel属性详解

    `Ext.grid.GridPanel` 是ExtJS中用于展示表格数据的核心组件之一。它提供了丰富的配置选项和方法来帮助开发者灵活地控制表格的表现形式及功能。接下来,我们将详细探讨`Ext.grid.GridPanel`的一些关键属性。 #### ...

    Ext组件描述,各个组件含义

    **2.6 Grid Panel (Ext.grid.GridPanel)** - **xtype**: `grid` - **功能描述**:Grid Panel 是一个用于展示表格数据的组件。 - **主要用途**:展示结构化数据,支持排序、过滤等功能。 **2.7 Paging Toolbar (Ext...

    ext表格布局小例子

    其表格组件(`Ext.grid.GridPanel`)是其最具特色的功能之一,广泛应用于数据展示和管理。 #### 二、代码分析 在本例中,我们首先引入了必要的 ExtJS 相关文件,包括样式表、脚本等资源。 ```html ...

    Ext_Js分页显示案例详解

    - **使用Ext.Js**:前端页面使用Ext.Js创建GridPanel,并绑定PagingToolbar组件,以便实现分页功能。 ```javascript Ext.onReady(function() { var store = new Ext.data.JsonStore({ url: 'display.action', ...

    Ext Grid表格的自动宽度及高度的实现

    在Ext JS中,`Ext.grid.GridPanel`是用于展示数据的主要组件之一。通过合理配置Grid的属性,可以使其根据父容器的大小动态调整自身尺寸,确保表格在任何布局下都能完美呈现。 #### 1. 利用CSS设置父容器尺寸 首先...

    Ext2.0框架的Grid使用介绍

    Grid是Ext2.0中用于展示数据的重要组件之一,它不仅能够显示各种格式的数据(如二维数组、JSON或XML),还支持数据的排序、过滤和分页等功能。Grid的核心在于`Ext.grid.GridPanel`类及其相关的配置项。 ##### 1. ...

    ext2.0 详解和API

    5. **表格组件**:如Ext.grid.GridPanel,用于显示和编辑表格数据,支持分页、排序、过滤等功能。 6. **树形组件**:如Ext.tree.TreePanel,用于展示和操作树形数据结构。 7. **菜单和工具栏**:如Ext.menu.Menu和...

    Ext中文帮助文档(Ext常见界面源码,及类库方法详解)

    4. Ext.grid.GridPanel:表格组件的主要类,包含了数据绑定、列配置、行处理等功能。 5. Ext.layout.ContainerLayout:容器布局,定义了不同类型的布局策略,如Fit、Border、Table等。 三、常见界面代码示例 文档中...

    Ext+JS高级程序设计.rar

    第3章 Ext Core实例—.NET语言实现 35 3.1 创建应用并设置开发环境 35 3.2 自定义Membership提供程序 37 3.3 创建母版页 38 3.4 首页设计 42 3.5 产品列表页 47 3.6 产品详细信息页 51 3.7 登录对话框 56 3.8 用户...

    ExtJs grid多选时获取选中的所有值

    3. **创建Grid Panel**:使用上面定义的Store和ColumnModel来创建Grid Panel,并设置`CheckboxSelectionModel`。 ```javascript var gridFatList = new Ext.grid.GridPanel({ el: 'noAuditUsers', store: ...

    Extjs Grid 用法 pdf版

    ### Extjs Grid 组件使用详解 #### 一、引言 Extjs 是一款基于 JavaScript 的前端框架,以其丰富的 UI 组件库而闻名。其中 Grid 组件是开发人员经常使用的一个重要组成部分,它允许用户以表格的形式展示数据。本文...

    EXTGrid属性方法

    ### EXTGrid属性方法详解 #### 一、Ext.grid.GridPanel `Ext.grid.GridPanel`是ExtJS 4.0中的一个关键组件,用于创建数据表格。以下为该组件的一些核心属性及其含义: - **store**: 数据存储器,用于存放表格的...

    Extjs2.02 Gridpanel

    【EXTJS 2.02 GridPanel 知识详解】 EXTJS GridPanel 是EXTJS库中的核心组件之一,尤其在EXTJS 2.02版本中,它提供了强大的表格展示和交互功能,对于初学者来说极具学习价值。GridPanel不仅能够处理基本的表格操作...

    Ext与后台数据库交互

    常见的数据视图类包括`Ext.DataView`、`Ext.grid.GridPanel`、`Ext.form.Field`等。 - **Ext.DataView**:这是一个比较特殊的视图类,因为它没有预设的显示模式,而是需要开发者自行定义显示模板。`Ext.XTemplate`...

    ExtJS3总结内容

    - `grid`: `Ext.grid.GridPanel` - `listview`: `Ext.ListView` - `panel`: `Ext.Panel` - `progress`: `Ext.ProgressBar` - `propertygrid`: `Ext.grid.PropertyGrid` - `slider`: `Ext.Slider` - `spacer`: `Ext....

    extjs gridpanel例子和简单应用

    ### ExtJS GridPanel 使用详解及示例 #### 一、引言 在现代Web应用程序开发中,特别是基于ExtJS框架的应用程序中,`GridPanel`是处理表格数据展示的一个非常重要的组件。它不仅可以帮助开发者轻松地展示数据,还...

Global site tag (gtag.js) - Google Analytics