EXTjs 分页 加条件查询


var store = new Ext.data.JsonStore({
url : "supplier_queryListUp",
root : "rows",
totalProperty:"totalProperty",//总条数
fields: [{
name: 'id'
},{
name: 'supplier'
},{
name: 'linkmanName'
},{
name: 'linkmanSex'
},{
name: 'phoneCode'
},{
name: 'address'
},{
name: 'remark'
}]
});
store.setBaseParam("factorQuery",false);
//读取数据
store.load({
params:{start:0, limit:_pageSize}
});


root:'rows'
{rows:{{id:1,supplier:2},{},,{}}}
json格式是这样的 意思是rows里的每一个子元素就对应的一行
ext会自动添加到一行上面

totalProperty:
这个是数据总条数 用来进行分页的 只要在json中传入
{totalProperty:10}
就可以了
totalProperty 与 rows是同级的数组元素 可以拼在一起


分页查询

text : "查看",
iconCls :"cwms-query",
tooltip : "根据条件查询人员档案信息",
listeners:{
"click":function(){
var _tbar = grid.getTopToolbar();
var _name = _tbar.items.get(1).getValue();
var _link_name = _tbar.items.get(4).getValue();
var _link_phone = _tbar.items.get(7).getValue();
grid.getStore().baseParams={'supplier.supplier':_name,
'supplier.linkmanName':_link_name,
'supplier.phoneCode':_link_phone,
'factorQuery':true};
store.load();
}
}


这里需要注意的是查询后不是onload 而是load onload 是把已有的值发过去 是不会替换内容的 所以如果用onload 你只能查询一次 这个问题也困扰了我很久 而load是每次都会替换新值 这里分页的时候也会自动保存内容 这些内容是可以在服务器端接收的 清空条件也是一样的原理


转换成字符串 前提json包一定要导好 这里就不提供了 到处有下载


public static String getJsonList(PageBean pageBean){
JSONArray jsonArray = JSONArray.fromObject(pageBean.getData());
String result = "{totalProperty:"+pageBean.getCout()+",rows:"+jsonArray+"}";
return result;
}


pageBean.getCout() 是总条数


下面是重点 使数据能够翻页的
ext表格查询时会将start 这个参数发到服务器 这是起始条数
拿到这一个 很容易就可以判断页了


public static int PAGE_SIZE = 12;

public static int getCurrentPage(int start){
int currentPage = 1;
if(start!=0){
currentPage = start/PAGE_SIZE+1;
}
return currentPage;
}


就能返回一个当前页数了 页数都能返回了 翻页就解决了


最后总结一下 服务器接收的参数 只有start 和条件查询参数
服务器发送的 只有查到数据 与总条数
其他的都不用管 EXT帮你全自动运行
小弟摸索了很久 拿出来分享一下 在网上找了很多都不全 这个应该算是很全了吧
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值