DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> 關於JavaScript >> extjs中form與grid交互數據(record)的方法
extjs中form與grid交互數據(record)的方法
編輯:關於JavaScript     

首先在grid的tbar中定義編輯按鈕:
Js代碼
復制代碼 代碼如下:
id:'editDataButton',
text:'編輯',
tooltip:'編輯',
iconCls:'edit',
handler: function(){ showeditPanel();}

再定義form:

Js代碼
復制代碼 代碼如下:
var xjjlEditForm = new Ext.FormPanel({.......省略form中的定義內容........});

然後定義編輯按鈕要調用的函數showeditPanel(同時定義一個加載form的window):


Js代碼

復制代碼 代碼如下:
//--編輯按鈕調用的函數(彈出編輯窗體)
function showeditPanel()
{ //直接取得選中的行對應的record
var record = grid.getSelectionModel().getSelected()
if(!record){
Ext.Msg.alert('信息','請選擇要編輯的數據');
return;
}

//--定義編輯窗體
if(!xjjlEditWindow)
{
xjjlEditWindow = new Ext.Window({
el: 'edit_win', //前端放置當前js文件的頁面中的div名稱
title:'編輯記錄',
width: 650,
height: 360,
closable: false,
closeAction: 'hide',
resizable: false,
items: xjjlEditForm //在window中加載編輯的form
});

}
xjjlEditWindow.show(Ext.get('editDataButton'));//顯示編輯窗口

//[注意]先xjjlEditWindow.show(); 再 xjjlEditForm.getForm().loadRecord(currrecordRecord); 就可以解決之前的頁面加載完成以後,第一次點擊[編輯]按鈕時無法加載數據到form的問題了。
xjjlEditForm.getForm().loadRecord(record);
//關鍵是這裡用當前選中的grid中的record填充form
}

這樣就可以在新窗口中對選中的數據進行編輯了;

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved