我有一个显示一堆记录的网格。我在网格中有一个操作列,显示用户可以单击以在每个单独记录上执行各种操作的各种按钮。
其中一个按钮我想根据记录类型动态更改工具提示。我有2种类型,活动和领导。如果记录是一项活动,我希望该按钮显示一个“关闭活动”'光标悬停在其上时的工具提示。如果记录是潜在客户,我希望按钮显示“接受潜在客户”。光标在光标上悬停时的工具提示。
现在我有一个getClass方法已经检查其他动态来动态更改按钮图像,例如,如果它已经关闭的主要/活动,它会显示一个红色复选标记,如果它没有关闭,它将显示绿色复选标记。我只想要一种方法来改变工具提示。这是我当前的getClass方法代码。
getClass: function(v, meta, rec) {
if( 'Y' === rec.get('closed_f') ) {
return 'x-icon-complete-red';
} else {
return 'x-icon-complete-green';
}
}
如何更改工具提示呢?我已经尝试了这个.tooltip =' [text]',this.setTooltip(' [text]')。我注意到在上面的代码中,'这个'实际上是网格对象,而不是按钮对象,所以它显然不起作用。
答案 0 :(得分:1)
要根据记录数据切换工具提示,getTip
函数(如getClass
)是可行的方法......(通常)。由于getTip
对Ext 4.2中的每个人都不起作用,因此如果getTip
无法正常工作,您可以在getClass函数中添加动态工具提示:
getClass: function(v, meta, rec) {
if( 'Y' === rec.get('closed_f') ) {
this.items[0].tooltip = 'Your custom tooltip';
return 'x-icon-complete-red';
} else {
return 'x-icon-complete-green';
}
}
请记住this.items[0]
中的索引是action列中按钮的索引。如果您的按钮是第二个,则必须设置1
而不是0
,依此类推......
http://docs.sencha.com/extjs/4.2.2/#!/api/Ext.grid.column.Action-cfg-getTip