0

免责声明:我对 Extjs 完全陌生。

我在 ComboBox 上有一个选择侦听器。选择后,我可以设置不同的单元格值:

'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';

为记录上的特定列添加和删除类的最佳方法是什么?

4

2 回答 2

6

到目前为止,我见过的最好的网格样式指南来自裙子:

http://skirtlesden.com/articles/styling-extjs-grid-cells

我认为自定义渲染器是适合您的方式。小心返回实际值而不是“hello world”字符串。

于 2013-03-27T21:31:44.330 回答
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;
        }
于 2013-03-28T15:30:34.083 回答