1. 程式人生 > >ext前臺表格動態切換url並修改傳遞引數

ext前臺表格動態切換url並修改傳遞引數

一般寫表格的時候都是如下的初始化,然後再將其配置進入表格的屬性之中,

var config = {

itemId : 'contentGrid',
flex : 1,
headerConfig : {
headerJson : headerJson, //設定表頭
columnAutoWidth : true
//自動列寬
},
rowNumber : true, //顯示行號
border : false, //不顯示邊框
columnLines : false, //不顯示列邊框
height : '100%',
pageConfig : {
enablePage : true, //設定是否分頁
pageNum : true
//設定顯示每頁條數
},
dataUrl : 'getSameNsr.action',
params : {
task_nsrmc : ''
}
};

但是這樣會將表格的url和param這兩個關鍵引數寫死,所以咱們需要在需要修改表格的url請求和傳遞的引數時候加上這些程式碼:

var chooseType = Ext.ComponentQuery
.query('combobox[name="chooseType"]')[0].getValue()
 //獲取相應的引數,這是我自己的引數,我是根據這個控制元件的值來指定不同的url;
var task_nsrmc = Ext.ComponentQuery
.query('textfield[name="task_nsrmc"]')[0].getValue();//獲取相應的引數,這是我自己的引數,我是根據這個控制元件的值來指定不同的url;
var store //獲取對應表格的store , 我用的是封裝的方法 所以放上來也沒用 , 讀者自行獲取相應表格的store就行了
if(chooseType == "1"){
store.getProxy().url = 'getSameNsr.action'; //當滿足情況1時修改表格請求資料的url
}
if(chooseType == "2"){
store.getProxy().url = 'getSameTysbh.action';//當滿足情況2時修改表格請求資料的url


}
store.getProxy().extraParams["task_nsrmc"] = task_nsrmc; //修改請求時傳送的引數
store.loadPage(1);