`
dayone
  • 浏览: 360965 次
  • 性别: Icon_minigender_1
  • 来自: xian
社区版块
存档分类
最新评论

extjs中form与grid交互数据(record)

阅读更多

首先在grid的tbar中定义编辑按钮:

id:'editDataButton',
text:'编辑',
tooltip:'编辑',
iconCls:'edit',
handler: function(){ showeditPanel();}

 

再定义form:

var xjjlEditForm = new Ext.FormPanel({.......省略form中的定义内容........});

 

然后定义编辑按钮要调用的函数showeditPanel(同时定义一个加载form的window):

//--编辑按钮调用的函数(弹出编辑窗体)
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
    }

 这样就可以在新窗口中对选中的数据进行编辑了;

分享到:
评论
2 楼 lunvsxiao 2010-07-31  
不错哦,谢了
1 楼 xue19850525 2009-01-09  
谢了!!!!!!!!!!!!!!

相关推荐

Global site tag (gtag.js) - Google Analytics