|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
时间:2008-05-11 关键字: 复选框 分页 表格
var grid = new Ext.grid.GridPanel({
renderTo:"xdiv",
height:260,
width:790,
cm:cm,
store:ds});
store:表格的数据源。以上属性是配置一个表格的必须属性,当然,根据需要还可以增加一些属性如: stripeRows:是否为表格加上分隔线。
如果在编号字段上加上sortable:true则效果如下
加上collapsible:true,显示效果如下。
为表格加上复选框。首先,定义一个选择模式,如下
为表格加上分页。首先定义一个分页面板如下。如下:
然而此时并不具备分页功能。需要给服务器提交几个参数,然后服务器根据这几个参数取出相应值,返回给客户端。与传统分页不同的是,服务器端不需要记录当前是第几页,分页参数在ds.load()中传递给服务器,如下。
此时服务器传回来的数据格式如下
而json的解析格式改为如下
totalProperty就是获得的记录总数
全部代码如下
Ext.onReady(function(){
var jsonhttp=new Ext.data.HttpProxy({url:'griddemo.do?method=extgrid'});
var ds = new Ext.data.Store({ proxy: jsonhttp,
reader:new Ext.data.JsonReader({totalProperty: 'countrow',root:'table'},[{name:'id'},{name:'name'},{name:'sex'}])});
ds.load({params:{start:0,limit:10}});
var sm = new Ext.grid.CheckboxSelectionModel();
var bb = new Ext.PagingToolbar({
pageSize: 10, store: ds, displayInfo: true,displayMsg: '显示第 {0} 条到 {1} 条记录,一共 {2} 条',
emptyMsg: "没有记录"});
var cm = new Ext.grid.ColumnModel([sm,
{id:'0',header:'编号',dataIndex:'id',sortable:true},
{id:'1',header:'姓名',dataIndex:'name'},
{id:'2',header:'性别',dataIndex:'sex'}]);
var grid = new Ext.grid.GridPanel({
renderTo:"tablediv",
height:260,
width:450,
cm:cm,
sm:sm,
title:'我的表格',
collapsible:true,
store:ds,
bbar:bb,
});
grid.render();
});
每次分页的时候服务器端接收两个参数,几start和limit,只需要处理这两个参数就可以了,不必理会当前是第几页,ext会自动处理。 start:从第几条记录开始 limit:每页显示几条记录 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
| 返回顶楼 | |
|
时间:2008-05-12
EXTJS1.1中,如何实现checkbox的效果?
需要三种选择状态:未操作、打钩、打叉。 俺是在cell中填入<img/>标签得到的。 觉得比较繁琐,请问有更简便的方法么? |
|
| 返回顶楼 | |
浏览 286 次







