在组合Extjs 4中显示displayField值而不是空文本

时间:2014-03-27 10:34:08

标签: extjs combobox extjs4 extjs4.1

我试图在组合中显示显示字段值而不是空文本值。我怎样才能做到这一点?数据通过本地服务器以组合方式填充。我试图实现一个监听器,但输出没有变化。

listener: {

  beforeRender:function(boxs1) {
    //if(!this.allowBlank) {
      var r1 = findRecordByDisplay(CIVIL) ;
      Ext.getCmp('boxs1').setValue(fullName);
    //}
  }
}

3 个答案:

答案 0 :(得分:1)

请试试这个:

Ext.onReady(function(){
Ext.QuickTips.init();
Ext.namespace('Ext.exampledata');
Ext.exampledata.zone = [
['us', 'US', 'US Zone'],
['japan', 'JAPAN', 'Japan Zone'],
['eu', 'EUROPE', 'Europe Zone']
];
var test=  new Ext.form.ComboBox({
    id:'appwarpZoneId',
    fieldLabel: 'Zone',
    hiddenName:'zone',
    renderTo:'sid',
    store: new Ext.data.ArrayStore({
        fields: ['abbr', 'zone'],
        data : Ext.exampledata.zone
    }),
    valueField:'abbr',
    value:'us',
    emptyText : 'Please Select ...',
    displayField:'zone',
    typeAhead: true,
    mode: 'local',
    editable:false,
    triggerAction: 'all',
    selectOnFocus:true,
    anchor: '25%'
})
});

答案 1 :(得分:0)

使用render或afterrender事件设置值。

listener:{
    afterrender:function(boxs1){
        //if(!this.allowBlank){
        var r1 = findRecordByDisplay(CIVIL) ;
        Ext.getCmp('boxs1').setValue(fullName);
    //}
    }
}

答案 2 :(得分:0)

你必须知道

setRawValue()=> displayField

setValue()=> valueField