我一直试图添加一个工具提示,当您将鼠标悬停在Ext.grid.Panel中的单元格上方时,该提示会弹出。

但是,列的渲染器函数的参数“ meta”没有tdAttr属性!

renderer : function(value, meta, record, row, col) {
    if (value == 1 && record.data.state === 'Accepted') {
        meta.tdCls = 'green';
        console.log('value',value);
        console.log('meta',meta);
        console.log('meta.tdAttr',meta.tdAttr);
        console.log('meta.style',meta.style);
        meta.tdAttr = 'data-qtip="' + value + '"';
        return record.data.id;
    } else if (value == 1 && record.data.state === 'Initial Version') {
        meta.tdCls = 'white';
        return record.data.id;
    } else if (value == 1) {
        meta.tdCls = 'red';
        return record.data.id;
    } else {
        return '';
    }
}


控制台示例输出:

value 1
meta Object {tdCls: "", style: ""}
meta.tdAttr undefined
meta.style


我觉得我可能在网格视图或网格面板上缺少某些设置,但是对于该属性甚至在meta参数上都不可用,这似乎很奇怪。从文档中:

metaData:对象
有关当前单元格的元数据集合;可以由渲染器使用或修改。公认的属性是:tdCls,tdAttr和样式。

最佳答案

我不知道为什么一开始就没有该设置,但是我手动添加了它以解决该问题:

meta['tdAttr'] = 'data-qtip="' + value + '"';


而且有效!

10-05 20:58