|
1、拼裝按鈕 備注:行標(biāo)識(shí)id,在加載顯示的時(shí)候就已和按鈕綁定到一起,并相應(yīng)的執(zhí)行按鈕操作;
- /*表格數(shù)據(jù)源*/
- var store = new Ext.data.Store({
- proxy:new Ext.data.HttpProxy({url:'TestAction!testMethod.action'}),
- reader:new Ext.data.JsonReader({
- totalProperty:'total',
- root:'result'
- },
- [
- {name:'planedId'}, /*安檢計(jì)劃唯一編號(hào)*/
- {name:'symbol'}, /*編號(hào)*/
- {name:'smbDesc'}, /*地址*/
- {name:'planedCnt'}, /*戶(hù)數(shù)*/
- {name:'checkDatePlan'}, /*計(jì)劃日期*/
- {name:'checkUnit'}, /*安檢單位*/
- {name:'printTime'}, /*打印時(shí)間*/
- {name:'cancel'} /*取消計(jì)劃*/
- ]),
- sortInfo:{field:'symbol',direction:'DESC'} /*排序*/
- });
-
- /*列模型中渲染的按鈕*/
- var cancelRender = function cancel(value){
- cancelButton='<TABLE class="x-btn-wrap x-btn x-btn-text-icon" id=save style="WIDTH:55px" cellSpacing=0 cellPadding=0 border=0>';
- cancelButton+='<TBODY><TR><TD class=x-btn-left><I> </I></TD>';
- cancelButton+='<TD class=x-btn-center><EM unselectable="on"><BUTTON id=ext-gen97 onclick=cancel('+value+')>取消</BUTTON></EM></TD>';
- cancelButton+='<TD class=x-btn-right><I> </I></TD></TR></TBODY></TABLE>';
- return cancelButton;
- };
-
- /*表格顯示項(xiàng) - 列模型*/
- var cm = new Ext.grid.ColumnModel([
- {header:'編號(hào)', width:200,dataIndex:'symbol'},
- {header:'地址', width:200,dataIndex:'smbDesc'},
- {header:'戶(hù)數(shù)', width:200,dataIndex:'planedCnt'},
- {header:'計(jì)劃日期',width:200,dataIndex:'checkDatePlan'},
- {header:'安檢單位',width:200,dataIndex:'checkUnit'},
- {header:'打印時(shí)間',width:150,dataIndex:'printTime'},
- {header:'取消計(jì)劃',width:150,dataIndex:'planedId',renderer:cancelRender}
- ]);
-
- /*表格面板*/
- var grid = new Ext.grid.GridPanel({
- store:store,
- cm:cm,
- loadMask: true,
- stripeRows:true,
- viewConfig:{forceFit:true}
- });
-
- /*觸發(fā)按鈕事件*/
- var cancel = function(value){
- Ext.Msg.confirm('提示','是否確定取消該計(jì)劃?',function(btn){
- if(btn!='yes'){
- return;
- }
- Ext.Ajax.request({
- url:'TestAction!testMethod.action',
- callback:function(o,s,r){
- if(r.responseText=='success'){
- Ext.Msg.alert('提示','取消成功!');
- return;
- }else{
- Ext.Msg.alert('提示','r.responseText');
- return;
- }
- }
- });
- });
- };
2、返回圖片按鈕鏈接 備注:行標(biāo)識(shí)id,在圖片按鈕顯示過(guò)后,當(dāng)執(zhí)行按鈕事件時(shí),在函數(shù)中通過(guò)循環(huán)選擇模型來(lái)獲取,并相應(yīng)的執(zhí)行按鈕操作; 對(duì)于這個(gè)例子,我就不做太多贅述,簡(jiǎn)單最好。代碼中唯一改動(dòng)的就是,按鈕顯示的方式改變了。好了,我來(lái)寫(xiě)一下。 對(duì)于store的加載,省略。來(lái)說(shuō)列模型中按鈕的顯示
- Ext.namespace("MCGM"); /*MCGM為命名空間*/
-
- MCGM.cm = new Ext.grid.ColumnModel([
- new Ext.grid.RowNumberer(),
- {header:'客戶(hù)編號(hào)',width:150,dataIndex:'customerId'},
- {header:'客戶(hù)名稱(chēng)',width:150,dataIndex:'name'},
- {header:'地址', width:150,dataIndex:'address'},
- {header:'組別', width:150,dataIndex:'group0'},
- {header:'順序', width:150,dataIndex:'order0'},
- {header:'調(diào)整', width:150,,dataIndex:""menuDisabled:true,
- renderer:function(v){
- return "<a onclick='update()' style="cursor:pointer" mce_style="cursor:pointer"><img src="images/tz.jpg" mce_src="images/tz.jpg" /></a>";
- }
- }
- ]);
-
- MCGM.grid = new Ext.grid.GridPanel({
- cm:MCGM.cm,
- store:MCGM.store,
- loadMask: {msg:'正在加載中,請(qǐng)稍后..'}, //加載時(shí)顯示的等待信息
- sm:new Ext.grid.RowSelectionModel({singleSelect:true}),
- viewConfig:{forceFit:true,autoScroll:true},
- });
-
- /*下面是我做的一個(gè)調(diào)整功能,需要跳到另外一個(gè)新頁(yè)面,并要獲得行的所有值,特別是行標(biāo)識(shí)id,這里我就只把獲得行信息的代碼寫(xiě)出來(lái),不怎么難,就幾行,還是寫(xiě)一下吧!*/
- var update = function(){
- Ext.Msg.confirm("提示框","您確定要調(diào)整此項(xiàng)記錄嗎?",function(btn){
- if(btn == 'yes'){
- /*關(guān)鍵代碼*/
- MCGM.view = MCGM.grid.getView();
- MCGM.rsm = MCGM.grid.getSelectionModel();
- MCGM.store = MCGM.grid.getStore();
-
- for(var i = MCGM.view.getRows().length-1;i>=0;i--){
- if(MCGM.rsm.isSelected(i)){
- var customerId = MCGM.grid.getStore().getAt(i).get('customerId');
- var name = MCGM.grid.getStore().getAt(i).get('name');
- var address = MCGM.grid.getStore().getAt(i).get('address');
- var group0 = MCGM.grid.getStore().getAt(i).get('group0');
- var order0 = MCGM.grid.getStore().getAt(i).get('order0');
- }
- }
- }
- });
- };
|