如何在Extjs Combobox中将布尔值转换为是或否

时间:2012-03-08 12:40:33

标签: extjs combobox boolean

我试图在Extjs组合框中显示是或否显示值而不是true或false我不确定使用哪个侦听器或以其他任何方式执行此操作。感谢任何帮助

2 个答案:

答案 0 :(得分:1)

创建一个这样的静态商店:

Ext.define('MyYesNoStore', {
  extend: 'Ext.data.Store',
  fields: [ 'id', 'name' ],
  data: [
    { id: false, name: 'No' },
    { id: true, name: 'Yes' }
  ]
})

然后在你的Combobox中使用这个商店。请注意,如果你想在网格中做类似的事情 - 布尔列中有特殊属性'trueText','falseText'。

答案 1 :(得分:1)

请务必在组合框中指定 displayField valueField 属性。

组合+是/否商店的完整工作示例

{
   xtype: 'combo',
   valueField: 'id',
   displayField: 'name',
   store: new Ext.data.Store({
      fields: [ 'id', 'name' ],
      data: [
             { id: false, name: 'No' },
             { id: true, name: 'Yes' }
           ]
   })

},

如果要在网格中使用它,还可以指定渲染器:

 renderer: function (value) {
     return value == false ? 'No' : 'Yes';
 }