ExtJS4.2 Grid知识点六:自动选中指定记录、自动选中全部记录、反向选择

本节主要学习ExtJS4.2 Grid自动选中指定记录、自动选中全部记录、反向选择,即在表格Grid加载数据后自动将符合条件的记录行选中,示例图片:

示例代码  /  在线演示

本例是通过监听Grid的afterrender事件来实现自动选择指定记录行,代码如下实现自动选中性别为男性的记录行:

自动选中指定记录代码

‘userlist‘: {
    afterrender: function(testGrid){//侦听goodslistview渲染  
        // 选中所有记录
        //testGrid.getSelectionModel().selectAll();
        var records=testGrid.getStore().getRange();
        for(var i=0;i<records.length;i++) {
            var record=records[i];
            if(record.get(‘type‘)==1) {
                testGrid.getSelectionModel().select(record,true);
            }
        }
    }  
}

自动选中全部记录代码

‘userlist‘: {
    afterrender: function(testGrid){//侦听goodslistview渲染  
        // 选中所有记录
        testGrid.getSelectionModel().selectAll();
    }  
}

在Grid顶部添加“反向选择”按钮,实现反向选择功能。

dockedItems: [{
    xtype: ‘toolbar‘,
    items: [{
        text:‘反向选择‘,
        tooltip:‘反向选择‘,
        action: ‘selectOthers‘
    }]
}]

给“反向选择”按钮添加事件,点击“反向选择”按钮可以取消选中当期已选中的记录,并同时选中当前所有未选中的记录。

‘userlist[id=testGrid] button[action=selectOthers]‘: {
    click: this.selectOthers
}

selectOthers: function(button) {
    var testGrid=Ext.getCmp(‘testGrid‘);
    var records=testGrid.getStore().getRange();
    var selectModel=testGrid.getSelectionModel();
    for(var i=0;i<records.length;i++) {
        var record=records[i];
        if(selectModel.isSelected(record)) {
            selectModel.deselect(record);
        }else {
            selectModel.select(record,true);
        }
    }
}

点击“反向选择”按钮后结果图片如下

ExtJS4.2 Grid知识点六:自动选中指定记录、自动选中全部记录、反向选择,布布扣,bubuko.com

时间: 2024-12-24 08:52:10

ExtJS4.2 Grid知识点六:自动选中指定记录、自动选中全部记录、反向选择的相关文章

ExtJS4.2 Grid知识点五:多选行(可以点击行选中记录与只能点击多选框选中记录)

本节主要学习ExtJS4.2 Grid多选行知识,示例图片: 在线演示  /  示例代码 主要内容如下: 可以点击行选中记录与只能点击多选框选中记录 选中Grid中数据加载到Form 获取Grid中多行数据,生成JSON格式 1.可以点击行来选中记录,此时多选Grid只需要配置selType: 'checkboxmodel',此时有一个缺陷,当你通过多选框勾选多条记录时,如果不小心点击某行,则当前点击行被选中,其它选中的记录行都被取消选择了. 2.只能点击多选框选中记录,此时多选Grid需要配置

ExtJS4.2 Grid知识点七:显示行号、斑马线效果(奇偶行背景色不一致)、复制单元格文字、禁止点击列排序

本节主要学习ExtJS4.2 Grid显示行号.斑马线效果(奇偶行背景色不一致).复制单元格文字.禁止点击列排序.禁止列头部右侧菜单,示例图片: 在线演示  /  在线演示 主要内容如下: 显示行号 斑马线效果(奇偶行背景颜色不一致) 复制单元格问题 禁止点击列排序 禁止列头部右侧菜单 1.显示行号 在Grid中增加行号列,xtype指定为rownumberer. {header: 'NO',xtype: 'rownumberer',width: 40,sortable: false} 2.斑马

ExtJS4.2 Grid知识点三:改变表格Grid单元格背景颜色

在ExtJS4.2 Grid知识点一:改变表格Grid单元格文字颜色一文中讲解了如何改变单元格中文字颜色,接下来在本章学习如何改变Grid中单元格的背景颜色,显示结果如图片: 在线演示  /  示例代码 实现方式同样是为Grid中该列自定义renderer函数,查询ExtJS 4.2 API得知,Ext.grid.column.Column的renderer属性可以是一个函数也可以是字符串,这个知识点是通过函数来实现的.函数参数列表如下: value : 当前待渲染的单元格值,即表格中某行某列的

ExtJS4.2 Grid知识点四:改变表格Grid行文字颜色,划过Grid行时文字变粗

在ExtJS4.2 Grid知识点一:改变表格Grid单元格文字颜色一文中讲解了如何改变单元格中文字颜色,接下来在本章学习如何改变Grid中整行文字的颜色,这样就不需要为每列单独定义renderer函数,显示结果如图片: 在线演示  /  示例代码 实现方式是在Grid中设置viewConfig属性的getRowClass函数,函数参数列表如下: record: 当前待渲染行数据Model,类型为:Ext.data.Model rowIndex: 当前待渲染行数,类型为:Number rowPa

ExtJs4之Grid详细

ExtJs博客前奏 由于这段时间事情比较杂乱,博客就主要以项目中例子来说明编写. ExtJs4中的Grid非常强大,有展示,选中,搜索,排序,编辑,拖拽等基本功能,这篇博客我就这几个功能做写累述. 1.ExtJs4之Grid详细 2.ExtJs4之TreePanel Grid的展示选中排序选中事件. 附图: 代码: <script type="text/javascript"> Ext.onReady(function () { var store = Ext.create

[转]C#中调用资源管理器(Explorer.exe)打开指定文件夹 + 并选中指定文件 + 调用(系统默认的播放类)软件(如WMP)打开(播放歌曲等)文件

原文:http://www.crifan.com/csharp_call_explorer_to_open_destinate_folder_and_select_specific_file/ C#中调用资源管理器(Explorer.exe)打开指定文件夹 + 并选中指定文件 + 调用(系统默认的播放类)软件(如WMP)打开(播放歌曲等)文件 折腾: C#中如何在右下角添加提示窗口,用于显示打开文件和文件夹 的过程中,需要实现,点击对应LinkLabel后,调用资源管理器,打开对应的文件夹. [

可设置指定时间自动消失的 MessageBox

本文主要是讲如何实现可设置指定时间自动消失的 MessageBox提示框 在开发客户端应用程序的时候,经常用得WinForm中MessageBox提示框.但是有时候还是满足不了一些用户要求,客户要求千奇百怪,例如客户需要做某些提示的时候,不去点击确定或取消的时候,等待一段时间自动消失,为此我们可以使用下面类来实现,采用 Thread.Sleep来关掉当前提示框,具体代码如下: using System; using System.Collections.Generic; using System

ExtJS4.2 Grid 分页栏 搜索

function SearchCondition(){ this.startTime = ""; this.endTime = ""; this.targetInfo = ""; this.logType = ""; this.manager = ""; this.reset = function(){ this.startTime = ""; this.endTime = "

ExtJS4.2 Grid行编辑、新增行及删除行

本节主要学习ExtJS4.2 Grid行编辑.新增行及删除行,示例图片: 在线演示  /  在线演示 主要内容如下: 行编辑模式 新增行 删除行 1.行编辑模式 在Grid中定义中配置插件Ext.grid.plugin.RowEditing,点击单元格时即启动行编辑模式,见上图. var rowEditing = Ext.create('Ext.grid.plugin.RowEditing', {     clicksToMoveEditor: 1,     autoCancel: false