ExtJS Grid中文字链接点击事件的更合理的处理办法

news/2025/2/25 0:02:43

我们经常会给GridPanel中的某一个column加一个renderer,让它的内容可以变成一个链接,例如:

    resultRenderer: function (value) {
        return '<a href="http://www.example.com/" οnclick="some_function()" >查看</a>';
    }

这样在Grid中,查看那两个字就变成链接了

如果点击这个查看的时候,想弹出窗口,那么我们最普通的方式,就是给链接加一个onclick响应函数,

onclick这里调用的函数,必然是通过全局的方式了,这样做有个缺点,就是全局函数的扩散,造成可维护性下降


其实,有一种更合理的处理办法,不论renderer中生成的是链接,还是其他的内容比如button,都是通用的

代码如下

首先给grid添加一个cellclick事件的响应函数

grid.on('cellclick', grid.onCellClick, grid);

响应函数中做如下处理

    onCellClick: function (grid, rowIndex, columnIndex, e) {
        if (e.getTarget().innerHTML === '查看' ) { //借助事件的target来判断,这里是链接可以这样判断,其他方式亦可
            var record = grid.getStore().getAt(rowIndex);  // Get the Record
            var fieldName = grid.getColumnModel().getDataIndex(columnIndex); // Get field name
            var data = record.get(fieldName);//这个data就是点击的单元格的数据了,一定有用的
            
            if (fieldName == 'this_column') {
                //如果是这一列,做这个事
            }
            
            if (fieldName === 'that_column') {
                //如果是另外一列,做另外的事
            }
        }
    }


http://www.niftyadmin.cn/n/4588557.html

相关文章

linux中安装sqlmap

wget https://codeload.github.com/sqlmapproject/sqlmap/legacy.tar.gz/master //下载sqlmap tar zxvf master //解压压缩包 cd sqlmapproject-sqlmap-310d79b/ //进入解压目录 python sqlmap.py -h //开始使用转载于:https://www.cnblogs.com/geekdc/p/6954276.html

Ext Grid上的单击以及双击事件

1、双击 var cb new Ext.grid.RowSelectionModel({ singleSelect:true //如果值是false&#xff0c;表明可以选择多行&#xff1b;否则只能选择一行 }); var alarmGrid new Ext.grid.GridPanel({ } alarmGrid.addListener(rowdblclick, …

拍拍贷中标的详细信息字段

拍拍贷的API中&#xff0c;可以查询详细的散标详情&#xff0c;http://open.ppdai.com/api/action?select11_43&selectedServiceTypeName投标接口类 格式、空值的影响&#xff0c;非常头疼。把数据样本保留一份&#xff1a; 转载于:https://www.cnblogs.com/jetz/p/695745…

ExtJS Grid 获得选中项数据

Grid的数据源是store&#xff0c;我们有时需要做点击某一个项而触发一定的事件&#xff0c;在这个处理过程中&#xff0c;我们不免需要得到点击的那个项&#xff0c;如何获得相应的数据呢&#xff1f; 首先&#xff0c;来看看怎么写触发事件。假设变量_grid就是一个GridPanel的…

2013上半年第三方支付交易6.9万亿,银联商务行业综合排名第一

赛迪顾问《中国第三方支付行业半年度研究报告(2013H1)》近日在京发布。报告指出&#xff0c;目前中国第三方支付行业已经步入了一个新的阶段&#xff0c;线上和线下市场正在通过移动技术、O2O等形式不断进行融合。因此&#xff0c;从全景的视角对中国第三方支付行业进行扫描&am…

2016 最流行的周末编程语言排行,Rust 夺冠!

程序员周末休息时也会写代码&#xff0c;但他们未必会使用工作语言&#xff0c;而是会选择一个自己偏爱的语言&#xff0c;这些语言可以被称为周末语言。Google 的 Felipe Hoffa 根据周末的 Commit 活跃量评出了2016 最流行的周末语言。在这之前&#xff0c;Hoffa 还通过分析 G…

ext grid 单击事件

EXTJS GRID 中 单击行和单元格获得行或者单元格的内容(数据) Js代码 grid.addListener(cellclick,cellclick); function cellclick(grid, rowIndex, columnIndex, e) { var record grid.getStore().getAt(rowIndex); //Get the Record var fieldName grid.getColumnM…

js图片闪烁效果

<HTML><HEAD><TITLE>Blink image</TITLE></HEAD><BODY ONLOAD"soccerOnload()" topmargin"0"><DIV ID"soccer" STYLE"position:absolute; left:150; top:0"><a href"http://图片的…