ext 带条件查询的 分页
好像对于EXT 一直没有特别深入的研究...不知道缺在什么地方,这是我自己学习的语言,总觉得 代码的质量存在问题..发上来 大家看一下.
ext 带搜索条件的 查询以及分页
function QueryString(){var name,value,i;var str=location.href;var num=str.indexOf("?")str=str.substr(num+1);var arrtmp=str.split("&");for(i=0;i < arrtmp.length;i++){num=arrtmp.indexOf("=");if(num>0){name=arrtmp.substring(0,num);value=arrtmp.substr(num+1);this=value;}}}Ext.onReady(function(){ var fm = Ext.form; var Request=new QueryString();var ID="";//Request["wlid"];// var zlUrl=getRootPath()+'servlet/SearchGoods?change=searchallGoods'; var grid = null; var page_size = 60; var cm = new Ext.grid.ColumnModel({ defaults: { sortable: true }, columns: [ new Ext.grid.CheckboxSelectionModel(), new Ext.grid.RowNumberer(), { header: '客户编号', dataIndex: 'KHcode' }, { header: '材料编号', dataIndex: 'goodsCode' },{ header: '材料名称', dataIndex: 'shortName' }, { header: '规格型号', dataIndex: 'style' }, { header: '单位', dataIndex: 'unitName' }, { header: '封装', dataIndex: 'APPROVALNO' }, { header: '厂家', dataIndex: 'FACTORY' }, { header: '库存数量', dataIndex: 'STCount' }, { header: '成本单价', dataIndex: 'aprice' }, { id: 'description', header: '参考进价', dataIndex: 'PPRICE' }, { header: '参考售价', dataIndex: 'SPRICE' }, { header: '', dataIndex: 'unitId', hidden:true, hideable:false }, { header: '', dataIndex: 'goodsId', hidden:true, hideable:false } ] }); var store = new Ext.data.Store({ proxy: new Ext.data.HttpProxy({ url: zlUrl }), reader: new Ext.data.JsonReader({ totalProperty: 'totalCount', root: 'gridRows', fields: [ {name:'KHcode'}, {name: 'goodsCode', mapping: 'goodsCode'}, {name: 'shortName'}, {name: 'style'}, {name:'unitName'}, {name: 'APPROVALNO'}, {name: 'FACTORY'}, {name:'STCount'}, {name: 'aprice'}, {name: 'PPRICE'}, {name: 'SPRICE'}, {name: 'unitId'}, {name: 'goodsId'} ] }) }); //导航栏 var dsSupplier = new Ext.data.Store({ proxy: new Ext.data.HttpProxy({ url:getRootPath()+'servlet/SearchGoods?change=sgoodsType' }), reader: new Ext.data.JsonReader({ root: 'gridRows', totalProperty: 'totalCount' }, [ {name: 'typeName', mapping: 'typeName'}, {name: 'typeId', mapping: 'typeId'} ]) }); var typeid=""; var combo = new Ext.form.ComboBox({ typeAhead: true, triggerAction: 'all', selectOnFocus :true, listClass: 'x-combo-list-small', store:dsSupplier, valueField:'typeId', displayField:'typeName', //editable: true, listeners:{ select: function(){ Ext.get('typeId').dom.value=this.getValue(); store.load({ params:{ start : 0, limit : page_size, typeId:this.getValue()//取得搜索表单文本域的值,发送到服务端 } }); }} }); grid = new Ext.grid.EditorGridPanel({ autoScroll:true, store: store, sm : new Ext.grid.CheckboxSelectionModel(),cm: cm, renderTo: 'editor-grid', width: Ext.get("content").getWidth(), height: Ext.get("content").getHeight(), autoExpandColumn: 'description', // column with this id will be expanded title: '客户物料详细信息', frame: true, clicksToEdit: 1, viewConfig:{ forceFit:true,//所有列都改变宽度autoFill:true,sortAscText:'升序',sortDescText:'降序',columnsText:'显示列'}, tbar: [{ text: '请选择类别:' },combo,'-', {xtype:'textfield',fieldLabel: '搜索框', id: 'searchContent', name: 'searchContent' },'-', { text:'搜索', handler:function(){ //Ext.get('searchContent').dom.value=Ext.getCmp('searchContent').getValue(); store.load({ params:{ start : 0, limit : page_size, storeId:Request["STOREID"], wlid:Request["WLID"], typeId:Ext.get('typeId').dom.value, searchContent:Ext.getCmp('searchContent').getValue() } }); } }, '-',{ text: '确定', handler:function(){ var json = []; var recordDtlArray = grid.getSelectionModel().getSelections();for(i = 0; i<recordDtlArray.length;i++){ json.push(recordDtlArray.data);}if(json.length==0){Ext.Msg.alert('信息','没有选中数据');return;}//发送保存请求Ext.lib.Ajax.request('POST',getRootPath()+'servlet/SearchGoods?change=checkedGoods',{success:function(request){var message = request.responseText;window.returnValue=message;window.close();},failure:function(){Ext.Msg.alert("错误", "与后台联系的时候出现了问题");}},'&members='+encodeURIComponent(Ext.encode(json))); } }],bbar:new Ext.PagingToolbar({ pageSize : page_size, store : store, displayInfo : true, displayMsg: '', emptyMsg: "没有数据..", beforePageText:'第', afterPageText:'页,共{0}页' }) }); Ext.getCmp('searchContent').setValue(decodeURI(Request["codestr"])); store.load({ params : { typeId:Ext.get('typeId').dom.value, searchContent:Ext.getCmp('searchContent').getValue(), storeId:Request["STOREID"], wlid:Request["WLID"], start : 0, limit : page_size } }); store.on('beforeload',function(){Ext.apply(this.baseParams,{ typeId:Ext.get('typeId').dom.value, storeId:Request["STOREID"], wlid:Request["WLID"], searchContent:Ext.getCmp('searchContent').getValue()});}); window.onresize = function(){ grid.setWidth(0); grid.setHeight(0); grid.setWidth(Ext.get("content").getWidth()); grid.setHeight(Ext.get("content").getHeight()); };});
页:
[1]