【问题标题】:ExtJs Grid Panel that contains links returns false包含链接的 ExtJs 网格面板返回 false
【发布时间】:2012-03-06 10:11:05
【问题描述】:

我有一个ExtJs 3.4 Grid Panel:在里面,第一列的每一行都是链接。

当我单击每一行时,我想在同一页面中打开一个详细信息面板,因此我实现了一个侦听器(在 cellclick 上)。但是我在第一列也有这些链接,当我单击这些链接时我想导航离开,但 Ext 只是重写了我的 onclick 侦听器(在链接上)并返回 false。

实现这一目标的最佳方法是什么?我必须编写另一个侦听器,或者可能是查看单元格是否包含链接的好方法...

【问题讨论】:

    标签: javascript extjs extjs3


    【解决方案1】:

    您可以使用Ext.EventObject.getTarget 方法来确定cellclick 处理程序中的目标。

    例如:

    cellclick: function(grid, rowIndex, columnIndex, e) {
        var record = grid.getStore().getAt(rowIndex);        
        if (e.getTarget('a.x-link', this.body)) {
            alert('link');
        } else {
            panel.body.update(record.get('company'));
        }
    }
    

    工作样本:http://jsfiddle.net/lolo/jD7ZE/2/

    【讨论】:

      【解决方案2】:

      这可能行得通,试试这个

      MyGrid.getSelectionModel().on('select', function (rModel, selectedRecord, idx, oBj) {
              $('#History_links').show();
          });
      

      【讨论】:

        猜你喜欢
        • 2011-02-15
        • 2011-08-06
        • 2017-04-16
        • 1970-01-01
        • 2014-01-04
        • 1970-01-01
        • 2014-08-18
        • 2018-12-02
        相关资源
        最近更新 更多