免责声明:我对Extjs来说是全新的。
我在ComboBox上有一个select监听器。选择后,我可以设置不同的单元格值:
'select': function (combo, records, Opts) {
e.record.set('value', 'hello world'); //set text for the "value" cell
....
挑战在于我可能需要添加或删除该单元格的类。我无法在Sencha Docs中找到如何选择或操作单元格而不是设置值。一种可能性是在列上使用自定义渲染器,但这并不按预期工作(除了文本/值设置正确)。意见取自:http://snipplr.com/view/40942/
,renderer: function (value, meta, record, rowIndex, colIndex, store) {
meta.css += ' rw-no-edit';
return 'hello again';
为记录中的特定列添加和删除类的最佳方法是什么?
答案 0 :(得分:5)
到目前为止,我见过的最好的网格样式指南来自裙边:
http://skirtlesden.com/articles/styling-extjs-grid-cells
我认为自定义渲染器是您的最佳选择。小心返回实际值而不是'hello world'字符串。
答案 1 :(得分:0)
工作解决方案:
,renderer: function (value, meta, record, rowIndex, colIndex, store) {
var numberOfEditFields = K.kreports.whereOperators.bh(record.get('operator'), record.get('type'));
if (!K.kreports.EditView) {
if (record.get('usereditable') == 'yo1' || record.get('usereditable') == 'yo2') numberOfEditFields = 0;
}
//de-emphasize cells that are not needed
var base_css = 'x-grid-cell x-grid-cell-value';
meta.tdCls = base_css;
if(numberOfEditFields === 0) {
meta.tdCls = base_css+' rw-no-edit';
}
return value;
}