包含链接的ExtJs Grid Panel返回false

时间:2012-03-06 10:11:05

标签: javascript extjs extjs3

我有ExtJs 3.4 Grid Panel:在内部,第一列填充了每行的链接。

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

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

2 个答案:

答案 0 :(得分:2)

您可以使用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/

答案 1 :(得分:0)

这可能有用,试试这个

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