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

首先在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
}

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

(0)

相关推荐

  • C#.NET采用HTML模板发送电子邮件完整实例

    本文实例讲述了C#.NET采用HTML模板发送电子邮件的方法,是非常实用的技巧.分享给大家供大家参考.具体方法如下: 要使用html模板进行发送邮件,需要准备以下几项工作: 1)HTML模板 2)替换函数(替换模板中绑定的变量) 3)邮件函数(发送邮件) 一.HTML模板 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtm

  • 基于HTML模板和JSON数据的JavaScript交互(移动端)

    写本文之前,我正在做一个基于Tab页的订单中心: 每点击一个TAB标签,会请求对应状态的订单列表.之前的项目,我会在js里使用 + 连接符连接多个html内容: var html = ''; html += '<div class="empty-list">' + '<div class="icon icon-box"></div>'+ '<div>还没有订单</div>'+ '</div>';

  • JavaScript和ActionScript的交互实现代码

    复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> <mx:Script> <![CDATA[ import flash.external.ExternalInterface; publ

  • ASP+模板生成Word、Excel、html的代码第1/2页

    大多数都是采用Excel.Application(http://www.blueidea.com/tech/program/2006/3547.asp)组件来生成发现容易出错,而且对于大多数和我一样的菜鸟来说,比较麻烦,考虑到前些天用ASP+模板+adodb.stream生成静态页面的办法,经过多次尝试,终于掌握了一种用ASP+模板生成Excel和word的新的办法,先分享如下: 用模板生成Excel.Word最大优点: Word.Excel文档样式易于控制和调整,以往用Excel.Applic

  • thinkPHP的Html模板标签使用方法

    注意:在使用如<html:select />等标签之前,必须要引入TP的标签库:<tagLib name="html" /> 如果我们现在需要一个select下拉菜单项,那么在ThinkPHP中我们可以这样做. 1.在Action控制器的方法中获取数据,举例如下: 复制代码 代码如下: public function mylist(){ $user = new Model('User'); $list = $user->getField('id,usern

  • 解析Android中webview和js之间的交互

    1.android中利用webview调用网页上的js代码.Android 中可以通过webview来实现和js的交互,在程序中调用js代码,只需要将webview控件的支持js的属性设置为true,,然后通过loadUrl就可以直接进行调用,如下所示:mWebView.getSettings().setJavaScriptEnabled(true);mWebView.loadUrl("javascript:test()"); 2. 网页上调用android中java代码的方法在网页中

  • php Smarty模板生成html文档的方法

    下面直接发代码 复制代码 代码如下: <?php /* file:config_smarty.php done:配置Smarty author:www.5dkx.com date:2009-12-21 */ include_once("../libs/smarty.class.php"); class MySmarty extends Smarty{ function __construct() { $this->Smarty(); $this->config_dir

  • PHP JSON格式数据交互实例代码详解

    在PHP中解析JSON主要用到json_encode和json_decode两个PHP JSON函数,比PHP解析XML方便很多,下面详细介绍下PHP JSON的使用.JSON基础介绍 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式. JSON主要有两种结构: "名称/值"对的集合,在PHP中可以理解为关联数组 (associative array). 值的有序列表(An ordered list of values).在PHP中可以理解为

  • 多种方式实现JS调用后台方法进行数据交互

    项目开发过程中很多地方都需要前端和后台的数据交互,几种典型常用的方法如利用控件的AutopostBack属性.Button提交表单等等.但这些都是有条件的,AutoPostBack具有实时性但会刷新页面,Button提交表单不能实现数据交互的实时性.当然说到前台与后台的数据交互更不能漏掉ajax,ajax实现前台与后台数据的异步交互,并且保证实时的.局部刷新.但有些数据不需要异步交互,例如当交互的数据是下一步执行的条件时,就必须要等到数据前台与后台数据交互完成后才能继续执行程序.所以对于掌握js

  • PHP与javascript实现变量交互的示例代码

    本例是PHP和javascript交互的例子,php中的值赋给js变量中,前提是这个php变量必须有值才行,就算是假分支中. 比如php中的$flags在本例中为true,如果js中false语句写成:$title_1.innerHTML = "<?php echo $title;?>";就会出错,因为$title在php中被赋值为数组 尽管在php的flags=="false";$title是一个字符串,情况是$title是数组,而数组在字符串中也是不

随机推荐