I are usig extjs 4.1.我经历了很多线程,解释了使用数据视图将鼠标悬停的工具提示。但是,我只需要在将鼠标悬停在网格的任何行上时显示一些文本,例如"双击此行"......到目前为止,我从另一个线程中获得了此功能...但它在电网内不起作用
function renderTip(value, metaData, record, rowIdx, colIdx, store) {
metaData.tdAttr = 'data-qtip="' + value + '"';
return value;
};
更新 - 这是我的网格
Ext.define('GridViewApp.view.GridViewApp', {
alias: 'widget.gridviewapp',
width: 800,
title: 'My Grid Panel',
grid: null,
store: null,
layout: {
type: 'anchor'
},
constructor: function () {
this.callParent(arguments);
var store = Ext.create('Ext.data.Store', {
storeId: 'myData',
scope: this,
fields: [
{ name: 'Q1', type: 'int' },
{ name: 'Q2', type: 'int' },
{ name: 'Q3', type: 'int' },
{ name: 'Q4', type: 'int' },
{ name: 'Q5', type: 'int' },
{ name: 'Improvements', type: 'string' },
{ name: 'Comments', type: 'string' }
],
sorters: [
{
//property: 'myData',
direct: 'ASC'
}
],
proxy: {
type: 'ajax',
scope: this,
url: 'GridView/writeRecord',
reader: {
type: 'json',
root: 'myTable',
idProperty: 'ID'
}
}
});
store.load();
this.grid = Ext.create('Ext.grid.Panel', {
title: 'GridView App',
store: this.store,
columns: [
{header: 'Q1', width: 100,
sortable: true, dataIndex: 'Q1'
},
{ header: 'Q2', width: 100,
sortable: true, dataIndex: 'Q2'
},
{ header: 'Q3', width: 100,
sortable: true, dataIndex: 'Q3'
},
{ header: 'Q4', width: 100,
sortable: true, dataIndex: 'Q4'
},
{ header: 'Improvements', width: 200,
sortable: true, dataIndex: 'Improvements'
},
{ header: 'Comments', width: 200,
sortable: true, dataIndex: 'Comments'
}
],
stripeRows: true,
width: 800,
renderTo: Ext.getBody()
});
this.add(this.grid);
this.grid.getView().getEl().set({ 'data-qtip': 'Double click me' });
}
});
更新 - 工作解决方案将其添加到网格上的侦听器中,它可以工作
itemmouseenter: function (view, record, item) {
Ext.fly(item).set({ 'data-qtip': 'Hello' });
},
如果将此渲染器作为每个列渲染器附加,则提示应该可以工作。验证您是否Ext.QuickTips.init()
代码中的某处调用。波纹管是我认为通过将全局工具提示附加到视图来将全局工具提示附加到网格的更简单方法。
grid.getView().getEl().set({ 'data-qtip': 'Double click me' });
Ext.QuickTips.init();
工作样品:http://jsfiddle.net/GCRA5/