Extjs Sencha网格和作用柱
我有一个网格:Extjs Sencha网格和作用柱,extjs,grid,extjs4.1,Extjs,Grid,Extjs4.1,我有一个网格: { xtype: 'actioncolumn', renderer: function (val, metadata, record) { if (record.raw.possibleActions != 2) { this.items[0].icon = ''; this.items[0].tooltip = '
{ xtype: 'actioncolumn',
renderer: function (val, metadata, record) {
if (record.raw.possibleActions != 2) {
this.items[0].icon = '';
this.items[0].tooltip = '';
}
metadata.style = 'cursor: pointer;';
return val;
},
width: 30,
align: 'center',
sortable: false,
items: [{
icon: 'images/edit.png',
tooltip: 'stuff',
handler: function (grid, rowIndex, colIndex) {
'do stuff'
}
}]
},
我希望当字段possibleActions不同于2时,隐藏action列的图标
使用此。项[0]。图标=;它将从所有列中删除图标
如何访问与条件匹配的特定行的列???使用此选项确实有风险。您可能会遇到其他一些情况
但是好的,如果你有我推荐你使用的实例
setVisible(false);
disable();
禁用和
setVisible(true);
enable();
使能。仅仅删除图像是不够的。使用这种方法确实有风险。您可能会遇到其他一些情况
但是好的,如果你有我推荐你使用的实例
setVisible(false);
disable();
禁用和
setVisible(true);
enable();
使能。仅仅删除图像是不够的。我已经解决了这个问题:
renderer: function (val, metadata, record) {
if (record.raw.possibleActions != 2) {
this.items[0].icon = '';
this.items[0].tooltip = '';
} else {
this.items[0].icon = 'images/edit.png';
this.items[0].tooltip = 'RELATÓRIO FINAL';
}
metadata.style = 'cursor: pointer;';
return val;
},
渲染器似乎覆盖了初始配置,这就是为什么所有记录都没有图标的原因。我已经解决了这个问题:
renderer: function (val, metadata, record) {
if (record.raw.possibleActions != 2) {
this.items[0].icon = '';
this.items[0].tooltip = '';
} else {
this.items[0].icon = 'images/edit.png';
this.items[0].tooltip = 'RELATÓRIO FINAL';
}
metadata.style = 'cursor: pointer;';
return val;
},
渲染器似乎覆盖了初始配置,这就是为什么所有记录都没有图标。问题是“this”或“grid.columns”指的是所有列。。。我希望能够访问特定的一个。@Migueltexeira,正如我所想。。。那会很难。问题是,可以“重写”的渲染器函数知道值,但不知道列类型。就你的情况而言,你需要把两者都混在一起。我想最好的办法是创建自己的行动专栏。有了它,你就有了完全的控制权,这样你就可以启动一个包含值+实例的侦听器谢谢你的帮助,我已经弄明白了。问题是“this”或“grid.columns”指的是所有的列。。。我希望能够访问特定的一个。@Migueltexeira,正如我所想。。。那会很难。问题是,可以“重写”的渲染器函数知道值,但不知道列类型。就你的情况而言,你需要把两者都混在一起。我想最好的办法是创建自己的行动专栏。有了它,你就拥有了完全的控制权,这样你就成为了一个包含值+实例的监听器。谢谢你的帮助,我已经弄明白了。