ext,修改工具条中每页显示行数

首先定义store:

 var listDS = new Ext.data.JsonStore({
  remoteSort:true,
  root:'rows',
  totalProperty:'total',
  url: '?/list/ds/',  //从后台程序获取数据
  fields:['in_id', 'sj_name',]
 });

 

接着定义一个在工具条中显示的数字输入框,在文本框中添加blur事件代码,根据新输入的行数更新store的参数,并reload:

 var showLimit = new Ext.form.NumberField({
  minValue:10,
  maxValue:1000,
  width:40,
  value:20,
  listeners: {
   blur:function(f){
    var pagesize=parseInt(f.getValue());
    if (pagesize>=10 && pagesize<=1000) {
     mybbar.pageSize=pagesize;  //修改pagesize
     listDS.reload(this.baseParams,{start:0, limit:pagesize});
    } else {
     return false;
    }   
   }
  }
 });

接着定义工具条,设置其store,pageSize大小等属性:

 mybbar= new Ext.PagingToolbar({
  store:listDS,
 pageSize: showLimit.getValue(),
  beforePageText:"当前第",
  afterPageText:"页,共{0}页",
  lastText:"尾页",
  nextText :"下一页",
  prevText :"上一页",
  firstText :"首页",
  refreshText:"刷新页面",
  displayInfo: true,
  displayMsg:"当前显示 {0} - {1} 行, 共 {2} 行",
  emptyMsg: "还没有数据" ,
  items:['-',{
   xtype:'label',
   text:'每页'
  },showLimit,{             //添加输入文本框
   xtype:'label',
   text:'行  }]
 });

posted on 2011-05-14 14:46  一江春水  阅读(696)  评论(0)    收藏  举报

导航