日期:2014-05-16  浏览次数:20688 次

Ext gride一个很纠结的问题,求解决思路
我想在一个表格上,实现增删改查四个操作,需要走四个不同的Action方法,我用的是同一个grid.Panel,怎么去修改Store 里的Url 或者其他的办法走同一个Action中的不同的方法



------解决方案--------------------
刚开始,肯定有一个store是查询全部的数据的,增删改的时候,
用Ext.Ajax.request({url,params,callback});返回后台执行Action,执行完毕后store.reload()就可以了。

查询的时候,要新的一个stores存放查询出来的数据,如下
HTML code
// 查询
        var queryUser = function(){
            var um=Ext.getCmp('username').getValue();
            ds = new Ext.data.Store({ // 新的Store
                url:'adminAction!queryByName.action',
                baseParams:{username:um}, // 传递参数
                reader:jsonReader
            });
            ds.load({params:{start:0,limit:12}}); // 新的store加载数据
            pagebar.bind(ds); // pagebar须绑定新的store
            grid.reconfigure(ds,cm); // 重新配置grid,参数Ext.data.Store、Ext.grid.ColumnModel
        }

------解决方案--------------------
这种操作基本上都是后台去执行的,你把Action传到后台时同时多传一个判断参数,后台可根据这个判断参数去分别调用不同的增删改查function