我正在使用 ExtJs - 4.2 。我想在网格中有一个带有标签和复选框的列 - 有什么想法吗?
我认为 checkcolumn 不允许在其旁边显示文字。/ { xtype: 'checkcolumn', header: 'Indoor?', dataIndex: 'indoor', width: 90, stopSelection: false }, /
有没有办法做到这一点?
我正在使用 ExtJs - 4.2 。我想在网格中有一个带有标签和复选框的列 - 有什么想法吗?
我认为 checkcolumn 不允许在其旁边显示文字。/ { xtype: 'checkcolumn', header: 'Indoor?', dataIndex: 'indoor', width: 90, stopSelection: false }, /
有没有办法做到这一点?
您可以扩展“Ext.grid.column.CheckColumn”类并覆盖渲染器函数。只是一个简单的例子:
Ext.define('CustomCheckbox', {
extend: 'Ext.grid.column.CheckColumn',
xtype: 'CustomCheckbox',
config: {
chkLabel: ''
},
renderer : function(value, meta) {
var cssPrefix = Ext.baseCSSPrefix,
cls = [cssPrefix + 'grid-checkcolumn'];
if (this.disabled) {
meta.tdCls += ' ' + this.disabledCls;
}
if (value) {
cls.push(cssPrefix + 'grid-checkcolumn-checked');
}
return '<img class="' + cls.join(' ') + '" src="' + Ext.BLANK_IMAGE_URL + '"/>' + this.chkLabel;
}
});
现在,您可以将其用作:
{
xtype: 'CustomCheckbox',
dataIndex: 'complete',
itemId: 'chkComplete',
chkLabel: 'SOme content'
}
这对我很有帮助。
但我主要关心的是,我想创建一个检查列,我可以在其中分配“ chkLabel ”中我从数据存储中获得的值。