一个简单的grid 传form 传值,用了click事件,其实用select事件更优雅一点。
Ext.onReady(function () {
var data = [
['rowen', 'hohai', 'basketball', '2004-11-01'],
['yyy', 'yizhong', 'football', '2004-01-11'],
['ysc', 'jianzhong', 'pingpong', '2004-01-21'],
['yww', 'jianxiao', 'pingpong', '2004-01-31']];
var reader = new Ext.data.ArrayReader({},
[{
name: 'name'
},
{
name: 'school'
},
{
name: 'sport'
},
{
name: 'year',
type: 'date',
dateFormat: 'Y-m-d'
},
{
name: 'desc'
}]);
var store = new Ext.data.Store({
data: data,
reader: reader,
sortInfo: {
field: 'name',
direction: 'desc'
}
});
var cm = new Ext.grid.ColumnModel([{
header: '姓名',
sortable: true,
width: 160,
dataIndex: 'name'
},
{
header: '入学年份',
sortable: true,
width: 160,
dataIndex: 'school',
editor: new Ext.form.TextField({
allowBlank: false
})
},
{
header: '运动爱好',
sortable: true,
width: 160,
dataIndex: 'sport'
},
{
header: '入学年份',
sortable: true,
width: 160,
dataIndex: 'year',
renderer: Ext.util.Format.dateRenderer('Y-m-d')
}]);
grid = new Ext.grid.GridPanel({
title: 'groupGrid',
store: store,
cm: cm,
width: 600,
height: 200,
frame: true,
//draggable :true,
enableDragDrop: true,
viewConfig: {
forceFit: true
},
//animCollapse:true,
collapsible: true,
// inline toolbars
tbar: [{
text: 'Add Something',
tooltip: 'Add a new row',
iconCls: 'add',
handler: function () {
alert("Add Something");
}
},
'|', {
text: 'Options',
tooltip: 'Blah blah blah blaht',
iconCls: 'option'
},
'|', {
text: 'Remove Something',
tooltip: 'Remove the selected item',
iconCls: 'remove'
}]
});
var form = new Ext.FormPanel({
autoWidth: true,
bodyStyle: 'padding:5px 5px 0',
frame: true,
height: 400,
labelAlign: 'right',
labelWidth: 80,
title: 'form',
width: '120',
items: [{
layout: 'column',
border: false,
items: [{
columnWidth: 0.50,
layout: 'form',
border: false,
items: [{
tabIndex: 1,
anchor: '100%',
fieldLabel: '姓名',
name: 'name',
xtype: 'textfield'
}]
},
{
columnWidth: 0.50,
layout: 'form',
border: false,
items: [{
tabIndex: 12,
anchor: '100%',
fieldLabel: '学校',
name: 'school',
xtype: 'textfield'
}]
},
{
columnWidth: 0.50,
layout: 'form',
border: false,
items: [{
tabIndex: 13,
anchor: '100%',
fieldLabel: '运动爱好',
name: 'sport',
xtype: 'textfield'
}]
},
{
columnWidth: 0.50,
layout: 'form',
border: false,
items: [{
tabIndex: 13,
anchor: '100%',
fieldLabel: '入学年份',
name: 'year',
format: 'Y-m-d',
xtype: 'datefield'
}]
}]
}]
});
var win = new Ext.Window({
title: 'je test',
height: 500,
renderTo: document.body,
width: 600,
items: [grid, form]
});
win.show();
grid.on('click', function () {
var record = grid.getSelectionModel().getSelected()
form.getForm().findField('name').setValue(record.get('name'));
form.getForm().findField('school').setValue(record.get('school'));
form.getForm().findField('sport').setValue(record.get('sport'));
form.getForm().findField('year').setValue(record.get('year'));
});
});
分享到:
相关推荐
FormPanel 是 ExtJS 中的一个核心组件,用于创建和处理表单元素,包括输入字段、按钮、选择框等。它提供了丰富的功能,如数据验证、远程提交、异步加载等,是构建用户交互界面的关键部分。 在ExtJS中,FormPanel是...
ExtJS Grid是一个强大的数据展示组件,它允许用户以表格的形式查看和操作大量数据。在实际应用中,数据过滤是常见的需求,以便用户能快速定位到感兴趣的信息。本篇将深入探讨ExtJS Grid的过滤操作,以及如何动态地对...
1. **EXTJS Grid组件**:EXTJS Grid是EXTJS的核心组件之一,它允许开发者创建可分页、可排序、可过滤的数据表格。Grid可以与各种数据源(如JSON、XML或内存中的数组)配合使用,并通过Store对象进行数据的加载和管理...
在ExtJs框架中,Grid组件是一种非常常用的展示数据表格的方式,它提供了丰富的功能,包括数据的排序、分页、过滤以及行选择等。在实际应用中,经常需要根据用户交互来判断Grid中的行是否被选中,以便进行下一步的...
在本篇文章中,我们将深入探讨如何使用Extjs4中的FormPanel组件从后台加载JSON数据,并将其映射到表单的各个字段中进行显示。这是一项非常实用的技术,尤其是在需要动态填充表单的情况下。 ### 一、Extjs4 ...
### ExtJs Grid 多选及获取选中值详解 #### 一、背景介绍 在Web应用开发中,ExtJs 是一款非常强大的JavaScript框架,它能够帮助开发者快速构建复杂的用户界面。其中,Grid Panel(简称 Grid)是ExtJs中最常用的一个...
在EXTJS中,Grid控件是用于展示大量结构化数据的关键组件,具有丰富的功能和高度可定制性。本文将深入讲解EXTJS Grid如何实现数据导出到Excel文件的功能。 首先,我们要明白EXTJS Grid的数据导出到Excel的过程通常...
本文将深入探讨如何在ExtJs中使用`FormPanel`组件结合`form`和`column`布局属性来实现横向布局,即在一个表单中元素能够按照列分布,形成一种更为直观和用户友好的界面设计。 ### 一、理解`FormPanel`及其属性 `...
EXTJS Grid是EXTJS库中的一个核心组件,用于创建数据密集型的表格视图,它在Web应用程序中常用于展示和操作大量结构化数据。EXTJS Grid提供了丰富的功能,包括分页、排序、过滤、编辑等,使得用户可以高效地管理和...
ExtJS Grid是Sencha ExtJS框架中的一个核心组件,它用于构建数据驱动的表格视图。Grid组件在Web应用中广泛使用,因为它提供了强大的数据展示、排序、分页、筛选和编辑功能。以下是对`ExtJS Grid`示例代码的详细解析...
EXTJS Grid是一款强大的数据展示组件,广泛应用于Web应用开发中,尤其在数据密集型界面设计时,EXTJS Grid以其高效的数据加载、灵活的分页、排序、过滤和自定义功能而受到开发者青睐。本总结例子将深入探讨EXTJS ...
在EXTJS开发中,我们经常会遇到使用Grid组件展示数据的情况,特别是当数据包含中文字符时,可能会遇到排序问题。EXTJS Grid默认的排序机制对于英文字符处理得较好,但对于中文字符,由于编码和比较规则的不同,可能...
ExtJS Grid是一款强大的数据展示组件,常用于构建复杂的Web应用程序中的数据网格。多表头插件是ExtJS Grid的一个重要特性,它允许我们创建具有多层次、复杂结构的表头,以便更好地组织和呈现数据。在ExtJS Grid中,...
ExtJS Grid 分页是Web应用中数据展示的重要组成部分,它允许用户高效地浏览大量数据而无需一次性加载所有记录。在本文中,我们将深入探讨ExtJS Grid的分页功能及其实现方式。 首先,ExtJS Grid是一种强大的...
ExtJS Grid是一个强大的数据展示组件,它在Web应用程序中用于显示和操作大量数据。Grid提供了丰富的功能,包括分页、排序、过滤、编辑等,是ExtJS库中的核心组件之一。"Extjs Grid 扩展实例"是一个演示如何增强Grid...
这是利用sencha cmd 生成的GridFilterDemo工程中的app和build文件夹,其余文件过大并且与主题无关,因此未包含。具体方法,请参看我的博客: 《Extjs4.2 Grid Filter Feature 表格过滤特性》
在EXT JS这个强大的JavaScript框架中,FormPanel是用于创建表单的重要组件,它允许开发者构建交互式的、数据驱动的Web应用程序。FormPanel不仅提供了一种布局管理方式,还支持各种表单元素,如文本框、复选框、下拉...
很多同事在用extjs grid做分页的时候,往往会想用grid的多选功能来实现导出Excel之类的功能(也就是所谓的多选记忆功能),但在选选择下一页的时候 上一页选中的已经清除 这是因为做分页的时候又向服务器请求了分页...
ExtJS GRID是一款强大的JavaScript数据网格组件,用于展示和操作大量结构化数据。在ExtJS 4.0版本中,Grid提供了单元格合并的功能,这在处理复杂数据展示时非常有用,比如汇总信息或者创建表头合并。下面我们将深入...
ExtJS Grid是一款强大的JavaScript组件,用于在Web应用中创建数据密集型的表格视图。它由Sencha公司开发,是Ext JS库的核心部分,广泛应用于企业级应用的前端开发,提供丰富的功能和高度的可定制性。这个"ExtJS_grid...