论坛首页 Web前端技术论坛

如何grid分页传动态参数?

浏览 23497 次
精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-12-29  
在ext中,我需要通过一个查询条件查询,发现送到后台查询grid数据

现在的问题是Ext.PagingToolbar进行分页操作的时候是通过store的baseParams传参的,
但是这个baseParams参数在store实例化的时候就生成了,不能动态改变,请问有什么办法解决吗?
   发表时间:2007-12-29  
问题已解决,原来baseParams是公共属性,查了API才知道
0 请登录后投票
   发表时间:2007-12-29  
我的分页是用dwr得过数据的..

用的是网上边的dwrdataproxy.

本人的是用hibernate分页,

可以得到数据,

现在的问题就是,Ext.PagingToolbar怎样动态改参数

	var ds = new Ext.data.Store({
	       	proxy : new Ext.data.DWRProxy({callback : homeworkAction.findAll_pagination,params:{start : '0',limit : '5'}}),  
			reader: new Ext.data.ObjectReader({id: 'id'},homeworktype),
			remoteSort: false
	    });


我就是想要通过Ext.PagingToolbar

动态改params:{start : '0',limit : '5'}这个参数

请问你的代码可以给我参考一下吗?
0 请登录后投票
   发表时间:2007-12-29  
楼上的说要动态改变params:{start : '0',limit : '5'}这个参数

不是很明白你的意思,那把limit: '5'中的‘5’设置成变量不就行了吗?

在点击下一页的时候,pagingToolbar会自动计算出start的值,并自动传到你的store指定的url

至于这个start我也没有尝试过去改?改start的作用是什么?

不过如果要改,可以尝试一下在store中设置baseParams:{start: 变量},这样不知到会不会覆盖pagingtoolbar的start
0 请登录后投票
   发表时间:2008-01-03  
var ds = new Ext.data.Store({
                 autoLoad : false ,
                 reader : dsreader ,
                 url : 'list.do' ,
                 name : 'ds' ,
                 remoteSort : false
          });

ds.on('beforeload', function(this) {
       this.baseParams = {test:'test'};
});
1 请登录后投票
   发表时间:2008-01-22  
params:{start : '0',limit : '5'}
为什么我在后台用requet.getParameter()方法拿不到参数?
0 请登录后投票
   发表时间:2008-01-27  
store的baseParams 附值写到store的beforeload 事件里就可以了
0 请登录后投票
   发表时间:2008-02-02  
Reset 写道
var ds = new Ext.data.Store({
                 autoLoad : false ,
                 reader : dsreader ,
                 url : 'list.do' ,
                 name : 'ds' ,
                 remoteSort : false
          });

ds.on('beforeload', function(this) {
       this.baseParams = {test:'test'};
});

这样做一定要注意,this.baseParams = {test:'test'};会把其他的参数覆盖掉,可以这样做
ds.on('beforeload', function(this) {
       Ext.apply(this.baseParams,{test:'test'});
 });

或者:
ds.load({params:{test:'test'}});
1 请登录后投票
   发表时间:2008-02-08  
借您的帖子问下问题,这个小问题不值得再开个新帖了,就找个ext的帖子问下吧…… ^.^

用ext的表格来生成一个表格,是不是表格的内容都必须在script标签里,用js语言定义数组或对象,以此内容来让ext的程序创造表格?

如果这样的话,一个浏览器不支持或者关闭js了,那么是不是什么内容都看不见了?
0 请登录后投票
   发表时间:2008-05-30  
var inputPageSize = 30;

var paging = new Ext.PagingToolbar(gridFoot, ds, {
    pageSize: inputPageSize,
    displayInfo: true    
});

ds.load({params:{start:0, limit:inputPageSize}});
定义一个变量 为分页记录条。你检索的提交时修改 inputPageSize 值
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics