`

ExtJS之Grid表格带分页

阅读更多
Ext.onReady(function(){
	var sm=new Ext.grid.CheckboxSelectionModel( );
	//列模式,好比数据库表一般,
	var cm = new Ext.grid.ColumnModel([
		new Ext.grid.RowNumberer(),
		//sm,
		{header:'学号',dataIndex:'id',id:'id',sortable:true,renderer:function(value){
			if(value%2==0){
				return "<span style='color:red'>"+value+"</span>";
			}else{
				return "<span style='color:green'>"+value+"</span>";
			}
		}},
		{header:'姓名',dataIndex:'name'}
	]);
	//本地测试数据集;
	var data = [
		['1','彬彬1'],
		['2','彬彬2'],
		['3','彬彬3'],
		['4','彬彬4']
	]; 
	
	//store 可以将数据集转化成任何grid可用形式
	//proxy 属性告诉我们从哪里获得数据
	var ds = new Ext.data.Store({
		
		// proxy:new Ext.data.MemoryProxy{data},
		proxy:new Ext.data.HttpProxy({url:'gridpage.jsp'}),//专门用来解析js变量
		reader:new Ext.data.JsonReader({totalProperty:'totalProperty',root:'root'},[ //用于数组的解析
			//在下面数据中加多一个mapping属性可以改变列显示位置
			{name:'id'},
			{name:'name'}
		]),
		sortInfo:{field:'name',direction:'ASC'}
	});
	
	var grid = new Ext.grid.GridPanel({
		el:'mm',
		ds:ds,
		cm:cm,
		width:600,
		
		bbar: new Ext.PagingToolbar({
			pageSize:10,
			store:ds,
			displayInfo:true,
			displayMsg:'显示第{0}条到{1}条记录共{2}条',
			emptyMsg:'没有记录'
		}),
		frame:true,
		viewConfig:{
			forceFit:true
		},
		sm:sm
	});
	grid.render();
	ds.load({params:{start:0,limit:10}});
	
});

  上:grid.js文件;

 下:gridpage.jsp:

 <%
  		String start = request.getParameter("start");
  		String limit = request.getParameter("limit");
  		try{
  			int index = Integer.parseInt(start);
  			int pageSize = Integer.parseInt(limit);
  			String json = "{totalProperty:100,root:[";
  			for(int i = index;i<pageSize+index;i++){
  				json+="{id:"+i+",name:'name"+i+"'}";
  				if(i!=pageSize+index-1){
  					json+=",";
  				}
  			}
  			json+="]}";
 			response.getWriter().write(json); 
  		}catch(Exception ex){
  		}
   %>

 因为ds.load()无法在grid.render()前准备好所有数组,所以它不知道自己应该实现高,没法子,只好为它指定一个固定的高度了,像这样<div id="mm" style="height:500px;"></div>

 

renderer属性的值是一个function,会传递个参数进去,而我们在grid看到的是这个函数的返回值,返回html就可以,返回什么就可以显示什么--颜色,链接,图片,按钮。

分享到:
评论

相关推荐

    EXTJS4 表格GRID示例

    EXTJS4 GRID 表格 分页 编辑 添加判断 颜色判断 分组 等示例

    extjs表格Grid比较全面的功能

    ExtJS表格Grid是一款强大的JavaScript组件,它在Web应用中用于展示和操作数据,尤其是在复杂的业务逻辑和大量数据处理中表现出色。这篇博客文章主要探讨了ExtJS Grid的全面功能,结合源码分析和实用工具,帮助开发者...

    ExtJs6.5Grid列表导出(包含样式)

    以上是实现ExtJs 6.5 Grid列表导出的基本流程,需要注意的是,这个过程可能需要根据具体的应用场景进行调整,例如处理复杂的数据格式、自定义渲染器、分页等。在实际开发中,可以封装成一个通用的Grid导出组件,以供...

    ExtJS 使用grid显示数据

    在ExtJS中,Grid Panel是一种数据驱动的组件,它允许开发者以表格的形式展示大量数据,并且支持分页、排序、过滤、编辑等功能。要创建一个Grid,首先需要定义数据模型(Model),它描述了数据的结构,包括字段名和...

    ExtJS Filter 实现表格过滤

    在ExtJS中,Grid组件是用于展示大量数据的表格视图,它提供了丰富的功能和交互性。"Filter"功能是Grid的一个重要特性,允许用户对表格数据进行实时筛选,提高数据的查看和管理效率。 ### 表格过滤(Grid Filter) ...

    extjs 简单分页例子

    EXTJS通过其Grid组件支持分页,Grid组件是一个可配置的表格视图,能够显示大量数据并进行排序、筛选和分页操作。 首先,我们需要创建一个EXTJS Grid组件。在JS文件中,定义Grid的基本配置,包括列模型(column ...

    extjs构造矩阵表格

    在EXTJS中,Grid组件提供了丰富的功能,包括排序、分页、过滤、自定义列等。在这个例子中,我们看到了如何通过组合多个Store和Grid的特性来构造一个矩阵视图,这对于展示大型数据集,特别是网络流量、统计信息等是...

    ExtJS_grid.rar_Grid javascript_extjs grid

    ExtJS Grid是一款强大的JavaScript组件,用于在Web应用中创建数据密集型的表格视图。它由Sencha公司开发,是Ext JS库的核心部分,广泛应用于企业级应用的前端开发,提供丰富的功能和高度的可定制性。这个"ExtJS_grid...

    EXTJS grid导出EXCEL文件

    1. **EXTJS Grid组件**:EXTJS Grid是EXTJS的核心组件之一,它允许开发者创建可分页、可排序、可过滤的数据表格。Grid可以与各种数据源(如JSON、XML或内存中的数组)配合使用,并通过Store对象进行数据的加载和管理...

    ExtJs Grid选择行

    在ExtJs框架中,Grid组件是一种非常常用的展示数据表格的方式,它提供了丰富的功能,包括数据的排序、分页、过滤以及行选择等。在实际应用中,经常需要根据用户交互来判断Grid中的行是否被选中,以便进行下一步的...

    extjs动态表格实例(封装GRID,从STRUTS2读取后台数据 )

    在这个"extjs动态表格实例"中,我们将探讨如何使用ExtJS封装Grid并从Struts2框架的后台获取数据。 首先,让我们了解ExtJS中的Grid组件。Grid是ExtJS的一个关键组件,它用于展示结构化数据,并支持多种操作,如排序...

    ExtJs Filter 表格过滤

    1. **数据网格(Data Grid)**:ExtJs的数据网格是一种显示大量结构化数据的组件,它支持分页、排序、筛选等多种功能。数据网格通过绑定到数据源(如Store)来显示数据,并且可以对每列应用不同的渲染和操作。 2. *...

    extjs grid

    EXTJS Grid是EXTJS库中的一个核心组件,用于创建数据密集型的表格视图,它在Web应用程序中常用于展示和操作大量结构化数据。EXTJS Grid提供了丰富的功能,包括分页、排序、过滤、编辑等,使得用户可以高效地管理和...

    动画效果的grid分页

    1. **Grid组件**:ExtJS的Grid组件用于显示表格数据,支持多列、排序、编辑等功能。通过配置`store`来绑定数据源,`columns`定义列显示,`pagingToolbar`则用于添加分页导航。 2. **分页功能**:Grid的分页功能由`...

    ExtJS之Grid

    其中,`Ext.grid.Panel`是ExtJS中的核心组件之一,用于展示表格数据,并支持排序、分组以及编辑等功能。 #### 二、基本GridPanel 在创建一个简单的`Ext.grid.Panel`时,我们需要关注以下几个关键点: 1. **定义...

    EXTJS Grid总结例子

    EXTJS Grid是一款强大的数据展示组件,广泛应用于Web应用开发中,尤其在数据密集型界面设计时,EXTJS Grid以其高效的数据加载、灵活的分页、排序、过滤和自定义功能而受到开发者青睐。本总结例子将深入探讨EXTJS ...

    extjs grid示例代码

    ExtJS Grid是Sencha ExtJS框架中的一个核心组件,它用于构建数据驱动的表格视图。Grid组件在Web应用中广泛使用,因为它提供了强大的数据展示、排序、分页、筛选和编辑功能。以下是对`ExtJS Grid`示例代码的详细解析...

    extjs 动态表格完整版

    首先,动态表格的核心组件是`Ext.grid.Panel`,它是ExtJS中的表格视图。这个组件提供了多种功能,包括排序、筛选、分页、编辑等。通过设置不同的配置项,我们可以调整表格的外观和行为,例如列宽、行高、表头样式、...

    Extjs Grid 扩展实例

    Grid提供了丰富的功能,包括分页、排序、过滤、编辑等,是ExtJS库中的核心组件之一。"Extjs Grid 扩展实例"是一个演示如何增强Grid功能的实践案例,通过这个实例,我们可以学习到如何在原有Grid的基础上进行自定义...

    extjs4Grid和jqGrid对比.doc

    - **灵活性**: 由于 ExtJs 的 Store 和 Proxy 设计,开发者可以根据实际需求选择不同的数据源类型(如 RESTful API 或本地数据)以及不同的数据处理策略(如分页、排序等),这大大增强了开发的灵活性。 2. **...

Global site tag (gtag.js) - Google Analytics