奇怪的分页

1
_____________________
var query=function(){
var proj_id=Ext.getCmp('Proj_name').getValue();
var task_name=Ext.get('Task_name').dom.value;
var res_name=Ext.get('Res_name').dom.value;
var start_date=Ext.get('start_date').dom.value;
var end_date=Ext.get('end_date').dom.value;
var trans_action=Ext.getCmp('Trans_Action').getValue();
var res_action=Ext.getCmp('Res_Action').getValue();
var del_in_proj=Ext.getCmp('Deleted').getValue();
store.on('beforeload', function(store) {
store.baseParams = {'projid':proj_id,'taskname':task_name,'resname':res_name,'startdate':start_date,'enddate':end_date,'transaction':trans_action,'resaction':res_action,'delinproj':del_in_proj};
} );
store.reload();
2
______________________
问题描述:使用ext 中的分页控件 Ext.grid.GridPanel 进行数据查询,默认查询所有数据,分页能正常显示数据,

但是,如果选个查询条件,再浏览分页。则出现数据不正确。



原因:查询条件没有作为参数传入url中,比如

proxy : new Ext.data.ScriptTagProxy({
   url : 'http://192.168.0.70:8080/ok/xx.action?action=getCustomInfo'
  }),



ds.load({
     params : {
      start : 0,
      limit : 3
     }
    });

正常情况下,ext 会将 start 和limit 作为参数附加到url中 形成新的请求 url:如下

'http://192.168.0.70:8080/ok/xx.action?action=getCustomInfo&start=0&limit=3&_dc=131654849&callback=stccalback10001'

其中 后来两个参数的值 是ext 自动生成的。



解决方法:

在 ds.baseParams 中加上所有需要的参数  ds.baseParams={startDate:startDate, endDate:endDate, src:src};



问题解决

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wayfoon322/archive/2008/07/23/2696912.aspx
3
_______________________________________________
EXTJS 查询数据,分页显示时传送自定义参数,添加控件的任何事件模板
var querytext = new Ext.form.TextField({
  name : 'queryvalue',
  fieldLabel : '查询',
  anchor : '100%'
});

var store = new Ext.data.JsonStore({
  url : './querybean/query.jsp',
  totalProperty : 'total',
  root : 'root',
  fields : f,
  pruneModifiedRecords : true
});



//-----------------------------照这模式可以添加任何事件-------------
store.on('beforeload', function() {    //Ext.data.JsonStore读入数据之前的事件,store不需要在写baseParams,因为会覆盖掉. (每次调用都载入此函数,'load'则第一次不调用外,其余都调用).
  this.baseParams = {
   queryvalue : querytext.getValue()
  };
});
//-----------------------------照这模式可以添加任何事件-------------

var querygrid = new Ext.grid.EditorGridPanel({
  width : 640,
  height : 480,
  clicksToEdit : 1, // (3)单击次数如1,开始编辑
  store : store,
  cm : cm,
  sm : sm,
......

    store.load({    //加载GRID首页数据(返回首页). store.reload 重新加载GRID当前页.
     params : {
      // queryvalue : querytext.getValue(),
      start : 0,
      limit : 10
     }

GRID翻页时,都会把自定义参数 queryvalue 随同 EXTJS 固定的  start 和 limit 一起传送出去.

POST 结果:
limit  10
queryvalue  MX1104-J05
start  10

你可能感兴趣的:(jsp,.net,ext,F#,Blog)