`
xuwenjin666
  • 浏览: 46679 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

Extjs GridPanel 常用属性总结

阅读更多

1、gridpanel继承了panel,其xtype为Grid,表格的列信息有类Ext.grid.ColumnModel( )定义,表格的数据存储器由Ext.data.Store( ),存储器根据解析的数据不同,可分为 JsonStore,SimpleStore,GroupingStore等

 

2、cm中的列信息包括首部显示文本header,列对应的记录集字段dataIndex,列是否排序sortable,列的渲染函数renderer,宽度width,格式化信息format等

 

3、ds可以把任何格式的数据转化成gird可以使用的形式,有两部分proxy和reader,proxy指获取数据的方式,reader是指如何解析这堆数据。这里用Ext.data.MemoryProxy专门解析JavaScript变量的。需要一次store.load进行初始化。远程读取数据使用ScriptTagProxy。

 

4、在Ext.data.ArrayReader( {},[

     { name:'id',mapping:2}//说明将序列号这一列改成第三列

    ])

 

5、在创建Grid时,可以定义属性enableColumnMove:false和enableColumnResize:false可以禁用grid默认的拖放列和改变列的宽度。

 

6、stripeRows:true 实现斑马线效果

loadMask:true实现读取数据时的遮罩和提示功能,就是出现一个加载的框,但是store.load( )在建立grid之后

viewConfig:{forceFit:true}使每列自动填充grid,若设置了列的宽度,则会按照比例计算。

autoExpandColumn:‘descn’ 可以让指定列descn的宽度自动伸展,但必须在cm中指定列中定义id:’descn’,只能指定一列伸展

在ds中加入sortInfo:{field:’name’, direction:’ASC’} 将按照name这一列正向排序

 

7、在ds的reader里设置type:’date’ 和dateFormat:’Y-m-dTH:i:s’,其中type是reader解析时把这一列作为日期类处理,dateFormat是把得到的字符串转换成相应的日期格式,还需要在cm中添加一行配置,配置了renderer属性用于格式化日期格式的数据,renderer:Ext.util.Format.dateRenderer(‘Y-m-d’),还要加上type:’date’属性

 

8、Value是单元格的值;cellmeta是单元格的相关属性,主要有id和css;record是这行数据的对象,如果要获取其他列的值,可以通过record.data['id']的方式得到;rowIndex是行号,columnIndex是列号;store是构造表格时传递的ds,也就是说表格的所有数据都可以通过store获得

 

9、自动行号的实现可以再cm中添加一行代码,放在最上面一行,new Ext.grid.RowNumberer( )

 

10、删除一行,可以创建一个id为remove的按钮,然后用代码Ext.get(‘remove’).on(‘onclick’,function(){

store.remove(store.getAt(1) );//删除第二行

Gird.view.refresh();//刷新行号

})

 

11、grid.GridPanel默认的是行选择模型,行选择模型默认的是支持多选的,鼠标点击时按住shift或ctrl键就可以选择多行,如果希望只选择一行,需要在grid中设置 sm:new Ext.grid.RowSelectionModel({singleSelect:true}),另外一个选择模型就是 CellSelectionModel单元格选择模型,每次只允许选择一个单元格,在EditorGrid里默认使用的就是单元格选择模型。

 

12、Var selections=grid.getSelectionModel( ).getSelections( );

先从grid中获得SelectionModel,再从选择模型中获得当前选中的数据,selecitons.length是选中的记录条数。若果需要判断是否选择了记录,只需要selections.length是否等于0即可。

注意:tree对象中也有两种选择模型,默认的是DefaultSelectionModel每次只能选择一个节点,另外还有一个MultiSelectionModel,它可以使用ctrl键选择多个节点(注意:不允许使用shift键)

 

13、grid.getView( )必须在创建Ext.grid.GridPanel之后调用,它只能获得grid创建好的GridView实例。在viewConfig中设置参数,columnsText,sortAscText,sortDesnText这三个参数分别用来设置表格中每列的下拉菜单中的‘显示的列’,‘升序’,‘降序’这3个部分显示的文字。scrollOffset:30 显示表格右侧滚动条预留的宽度,默认是20px;

 

14、若想出现滚动条,则需定义grid高度。

 

15、分页工具条用pageSize说明一页显示几条数据,displayInfo是否显示数据信息,displayMsg只有当 displayInfo为true时才有效,用来显示有数据时的提示信息,{0},{1},{2}会自动被替换成对应的数据,emptyMsg没有数据时显示的信息。注意用分页工具条时需要将store.load( )在构造grid之后。

 

16、若要从本地读取数据,这需要将MemoryProxy改成PagingMemoryProxy

 

17、若要进行远程排序,就需要在ds中设置remoteSort:true。

 

18、若要对表格进行编辑,需要在cm中增加属性 editor:new Ext.grid.GridEditor(new Ext.form.TextField({ allowBlank:false})),还需要将GridPanel改成EditorGridPanel。默认双击单元格才能编辑,可以再grid修改增加属性clicksToEdit:1,表示单击就可以修改。

分享到:
评论

相关推荐

    给Extjs的GridPanel增加“合计”行

    在EXTJS中,GridPanel是一种常用的组件,用于展示表格数据。在实际应用中,我们经常需要在GridPanel底部显示一行“合计”行,以便对某一列或多列的数据进行求和或其他统计操作。这篇博文“给Extjs的GridPanel增加...

    extjs常用增删改查操作

    #### 六、总结 通过上述介绍,我们详细了解了如何在 ExtJS 中实现数据的增删改查操作。掌握了这些基础技能后,开发者可以根据项目需求灵活运用这些技术来构建高效稳定的前端应用程序。希望本文能为你提供实用的指导...

    extjs 常用控件的使用 table layout

    "常用控件的使用"涵盖了EXTJS中的一些核心组件,如: 1. **TextField**:用于输入文本的基本字段,支持多种验证和配置。 2. **ComboBox**:下拉框,允许用户从预定义的选项中选择,也可以进行搜索。 3. **Checkbox*...

    Gridpanel多表头的扩展

    在EXTJS框架中,Gridpanel是用于展示数据的常用组件,它提供了丰富的功能,如排序、分页、筛选等。当我们需要对数据进行更复杂的展示,例如按类别或层级分类时,多表头(Multi-Level Headers)就显得尤为重要。标题...

    Extjs 实现多行合并(rowspan)效果

    GridPanel是ExtJS用于展示数据的常用组件,它由一系列行(rows)和列(columns)组成,每一行对应一个数据对象,每一列对应数据的一个属性。默认情况下,每一行是独立的,没有行间合并的概念。要实现行合并,我们...

    extjs3.0例子

    在这个“extjs3.0例子”中,我们将深入探讨EXTJS的核心概念、常用对象及其使用方法。 EXTJS的核心在于它的组件模型,其中包括窗口(Window)、面板(Panel)、表格(Grid)、表单(Form)、菜单(Menu)等。这些...

    Extjs4下拉菜单ComboBox中用Grid显示通用控件

    在EXTJS4中,`ComboBox` 是一个非常常用的组件,它提供了一个下拉选择框的功能。在某些场景下,我们可能需要在下拉菜单中展示更丰富的信息,比如表格数据,这时就可以使用 `GridComboBox`。`GridComboBox` 结合了 `...

    轻松搞定Extjs

    - **Ext.apply()和Ext.applyIf()**: 这两个方法用于合并对象属性,是Extjs中常用的设计模式之一。 #### 消息框 消息框是与用户交互的重要手段之一。本章详细介绍了Extjs提供的多种消息框类型及其使用方法。 - **...

    学习ExtJS Panel常用方法

    在开始探讨 ExtJS Panel 的常用方法之前,我们先来了解一下与 Panel 相关的一些基本属性。 1. **frame**: - 类型:布尔类型(true 或 false) - 描述:此属性用于控制 Panel 边框的样式。当设置为 `true` 时,...

    ExtJS-MVC-用户列表实例

    总结起来,这个"ExtJS-MVC-用户列表实例"展示了如何使用ExtJS的MVC架构来构建一个功能完整的Web应用,包括定义数据模型、创建视图来展示数据、设置控制器来处理用户交互,以及利用Store进行数据管理。同时,...

    ExtJs_grid.txt

    其中,Grid是ExtJs中最常用的数据展示组件之一,它能够以表格形式显示数据,并提供了丰富的交互特性,如排序、筛选、分页等。 在ExtJs中,Grid的构建主要包括以下核心部分: - **ColumnModel**: 用于定义Grid中的...

    ExtJS4 doc文档

    `GridPanel`是ExtJS4中最常用的组件之一,用于展示结构化的数据。它提供了丰富的功能,如分页、排序、过滤、编辑等。`Column`类定义了列的属性和行为,而`SelectionModel`控制用户选择行的方式。通过组合使用这些...

    ExtJs grid多选时获取选中的所有值

    其中,Grid Panel(简称 Grid)是ExtJs中最常用的一个组件之一,用于展示表格数据。在实际业务场景中,经常需要支持用户对表格中的多行数据进行选择,并执行批量操作,如删除、编辑等。因此,掌握如何在ExtJs Grid中...

    EXTJS分页全面分析

    在EXTJS框架中,`GridPanel`组件是一种常用的数据展示工具,它能够以表格形式呈现数据集。而分页功能是`GridPanel`一个重要的特性,它能够帮助用户更有效地管理大量的数据记录,避免一次性加载过多数据导致的性能...

    ExtJS帮助文档

    ### ExtJS基础知识与应用 #### ExtJS简介 ExtJS是一款基于...通过以上内容的学习,你应该已经掌握了ExtJS的基础知识和一些常用组件的用法。接下来可以进一步深入学习更多高级特性,如自定义组件、数据绑定等。

    ExtJs2.0简明教程

    面板是ExtJS中最常用的容器之一,它可以用来组织其他组件,并且支持多种布局方式。通过设置`title`、`bodyPadding`等属性来自定义面板的样式。 #### 4.2 选项面板TabPanel TabPanel是一种特殊的面板,它包含了多...

Global site tag (gtag.js) - Google Analytics