我想在Combobox斜体中输入一些条目。
是否有类似于Column的渲染器或者我该如何实现?
编辑:抱歉,但我没有提供足够的信息,而且我意识到这是我以前想做的废话......
在完全理解我的问题后,我会写更多的话......
答案 0 :(得分:5)
如果您只想设置列表项的样式,则为下拉列表中使用的内部绑定列表提供getInnerTpl()
函数就足够了:
var combo = new Ext.form.field.ComboBox({
// ...
listConfig: {
getInnerTpl: function() {
return '{field1}: {field2}';
}
},
// ...
});
如果您想更改下拉列表的整个内容,请在tpl
中提供listConfig
参数:
var combo = new Ext.form.field.ComboBox({
// ...
listConfig: {
tpl: '<div><tpl for="."><span class="item">{field1}: {field2}</span></tpl></div>',
itemSelector: 'span.item' // you need to provide an itemSelector if you change the template
},
// ...
});
根据Tanel Tähepõld建议,您应该阅读Ext.XTemplate
的文档。
答案 1 :(得分:0)
Ext.form.field.ComboBox有配置属性“renderTpl”,你可以创建自己的Ext.XTemplate并使用它(html标记)。 XTemplate还允许在模板中使用if calus,这样你就可以创建caluse for italic text。 Ext.XTemplate的文档:http://docs.sencha.com/ext-js/4-0/#/api/Ext.XTemplate