`

Extjs中关于使用分组表格控件之后无法获取对应的行记录问题。

阅读更多

一、功能描述。

展示信息的时候需要将信息根据地区分组。并且添加一摘要行用来显示其他三列在这一地区分组下的总面积之和。

并且根据点击不同的分类弹出不同的提示信息。



 

二、问题描述:

因为需要根据点击的分类显示不同的提示,所以要对点击的分类进行判断,于是监听分类列的点击事件,用点击事件函数参数中的record(行记录)来获取当前选中行的分类列中单元格的数据。

在第一个地区分组下操作任何行不存在问题。

但是换第二组第三组的时候确无法获取相应的数据,record记录均为第一组的数据。



 三、思路&解决方案

1:思路、既然只有第一组能成功获取相应记录,并且点击其他组获得的依然是第一组的数据,证明数据并不存在record中,但是确显示出来了证明html元素中有值,



 

首先来看column列监听事件中函数的参数

  1. click:function(grid,td,rowIndex,cellIndex,element,rec,tr){  
  2.          //grid 即当前grid  
  3.          //td  即单击的td元素  
  4.         //rowIndex 行索引  
  5.         //cellIndex  列索引  
  6.         //element dom元素  
  7.        //rec    被选中的记录  
  8.        //tr    tr元素  
  9. }  

原来我们不仅仅能够获得record,并且能得到点击的td元素。

我们于是可以通过Ext.get(td),获得一个Ext.dom.Element对象,这个对象包含了td的所有元素。根据第三个图可以看到td元素下还包了一个层div。我们就可以通过这个对象的first方法获得这个div对象。console这个div对象,分类列的显示信息在dom的innerHTML属性里,我们直接通过对象‘点’这个属性就获取到了。

写法如下:

 

cellclick:function(table,td,cellindex,rec,tr,rowIndex){
         	var title=Ext.get(td).first().dom.innerHTML;
}

 这里用的是grid的单元格点击事件,但是用列的单击事件也没问题,该有的参数还是有。

最终效果如下



 无论是点击第一行还是其他行,始终能够获取对应的记录,从而作出判断显示不同的分类信息

 

     

 

  • 大小: 64.6 KB
  • 大小: 66.6 KB
  • 大小: 8.2 KB
  • 大小: 257.7 KB
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    Extjs UI控件 for Asp.net3.5

    在标签"Ext控件 Asp.net"中,我们看到这两个关键词的结合,表示我们要探讨的是如何在ASP.NET环境中使用ExtJS控件。Ext控件通常指的是ExtJS库中的组件,它们可以通过JavaScript API进行配置和操作。将这些控件集成到...

    Extjs与C#完美接合写法控件源代码

    - ExtJS 提供了大量的预定义控件,如表格(Grid)、面板(Panel)、窗口(Window)、表单(Form)等,以及多种布局模式(如Fit、VBox、HBox、Border等),使得前端界面设计变得灵活且高效。 2. **C# 后端处理**: ...

    Extjs4.2 根据不同的数值设置tabpanel行的背景颜色

    例如,在使用ExtJS框架构建的应用程序中,可以根据某个特定字段的值来改变表格中行的背景颜色,从而突出显示某些关键信息。本文将详细介绍如何在ExtJS 4.2版本中实现这一功能。 #### 二、技术背景 **ExtJS** 是一...

    ExtJS 配置和表格控件使用第1/2页

    **二、ExtJS表格控件(Grid)的使用** 1. **创建列信息**: 使用`Ext.grid.ColumnModel`定义表格的列,例如: ```javascript var cm = new Ext.grid.ColumnModel([ { header: '编号', dataIndex: 'id' }, { ...

    EXTJS部分中文源码

    此外,熟悉EXTJS的源码也有助于解决在实际项目中遇到的问题,因为有时官方文档可能不包含所有细节,而源码往往能给出最准确的答案。 EXTJS支持多种数据源,包括JSON、XML、CSV等,这使得它能够方便地与服务器端的...

    Extjs中文教程

    - **消息框**是Extjs中用于显示简单通知或提示信息的一种控件。 - 包括提示框、输入框、确认框等多种类型。 - **自定义消息框**允许开发者自定义消息框的样式、布局和交互行为。 - **进度条对话框**用于显示后台任务...

    Extjs分页使用java实现数据库数据查询.docx

    在本文中,我们将探讨如何使用ExtJS框架结合Java实现数据库数据的分页查询。ExtJS是一个强大的JavaScript库,常用于构建桌面级的Web应用程序,而Java则是一种广泛使用的后端开发语言,常用于处理服务器端逻辑。在这...

    extjs4Mvc事例

    这个"extjs4Mvc"事例提供了关于如何在ExtJS 4中有效地利用MVC(Model-View-Controller)设计模式的详细教程。MVC模式是软件工程中常用的设计模式,它有助于保持代码的组织性和可维护性。 在ExtJS 4中,MVC架构被...

    EXTJS net 增删改查示例

    - **Read**:使用Store的`load()`方法从服务器获取数据,填充到表格或其他组件中。 - **Update**:修改Store中的某个Model实例,然后调用`sync()`将更改推送到服务器。 - **Delete**:选择要删除的Model,调用`...

    asp.net下extjs完整实例

    在ASP.NET应用中,可以使用EXTJS的GridPanel组件展示由ASP.NET后台提供的数据。GridPanel可以与ASP.NET的数据源控件(如SqlDataSource或EntityDataSource)配合,实现数据的异步加载和分页,提升用户体验。 例如,...

    EXTJS学习文档 适合初学者

    **控件(Widgets)**是EXTJS中可以直接在页面上创建的可视化组件,如面板、表格、树形菜单、窗口等。它们为开发者提供了丰富的UI设计选项,使得创建复杂的用户界面变得简单。 **组件体系**在EXTJS 2.0版本中得到了...

    extjs4环境搭建

    在这个函数内部,你可以创建并使用ExtJS的控件和组件: ```html Ext.onReady(function(){ // 在这里创建及使用 Ext 控件 }); ``` 在`Ext.onReady`的回调函数内,你可以编写代码来实例化窗口、面板、表格等组件,...

    spket1.6和extjs3.4

    ExtJS 3.4是该库的一个成熟版本,包含了各种控件如表格、菜单、窗口、按钮等,用于创建具有桌面应用般体验的Web应用。这个版本支持多种浏览器,并且拥有良好的文档和社区支持。 **两者结合使用** 当开发者使用...

    EXTJS应用EXTJS应用EXTJS应用EXTJS应用

    `使用帮助.txt`文件通常提供关于如何使用应用程序的指南,包括功能介绍、操作步骤和常见问题解答,帮助用户更好地理解和操作EXTJS应用。 `洪越源代码--更多免费精品商业源码.url`看起来是一个链接,可能指向一个...

    ExtJs开发实战

    2. Checkbox全选功能:表格中会使用Checkbox来实现多选功能,ExtJs中可以方便地通过配置选项来实现全选或反选,以及对应行的选中状态管理。 3. 动态列显示:在数据展示时,用户可能需要根据自己的需求选择显示哪些...

    ExtJs4.2 下拉框树

    在描述中提到,原生的ExtJs 4.2下拉框在展开时可能会遇到一些问题,比如默认显示根节点、最小高度时无法自动调整高度等。为了解决这些问题,开发者通常需要对源代码进行一些修改。 首先,我们来看`TreePicker.js`这...

Global site tag (gtag.js) - Google Analytics