应用emptyText后,Tagfield无法正常工作

时间:2016-10-03 07:49:15

标签: javascript extjs tags extjs6

在我的程序中,我正在使用Tagfield,所以Iam使用Ext.form.field.Tag

requires: [
        'Ext.grid.filters.Filters',
        'Ext.form.field.Tag'
    ],

稍后在代码中我使用了tagfield。

代码是:

 { 
    xtype: 'tagfield', 
    emptyText : "Hello", 
    growMax  : 10,
matchFieldWidth : false,
valueField: 'title',
displayField:'title',
createNewOnBlur:true, 
parentGrid : me, 
editable : true,
filterPickList: true,
dataIndex:header.getAttribute("DATAINDEX"),
queryMode: 'local', 
disabled: true,
     }
   Note : STore is loading from some other method and everything is working fine if I remove emptyText

之后一切正常,但是当我使用emptyText : "Hello"或给textText赋值时,会出现emptyText,但是combo正在运行。无法从组合中选择值。我试图制作小提琴手,但在应用emptyText之后,所有的小提琴组合都会出现。

我想念什么吗?谢谢你的帮助。

2 个答案:

答案 0 :(得分:4)

在tagField中使用此而不是emptyText。

listeners:{
              afterrender:function(combo){
                  var me = this,
                  values = me.getValueRecords();
                  me.inputEl.set( {
                  'placeholder': values.length ? '' :'Hello'});
              },
              change:function(tag){
                    var me = this,
                  values = me.getValueRecords();
                  me.inputEl.set( {
                  'placeholder': values.length ? '' :'Hello'});
              }
         }

答案 1 :(得分:0)

添加侦听器以解决此问题:

listeners: {
              afterrender: function (ctl, e, eOpts) {
                var values = ctl.getValueRecords();
                ctl.inputEl.set( { 'placeholder': values.length ? '' :'Your text'});  
              },
              change:function(ctl){
                var values = ctl.getValueRecords();
                ctl.inputEl.set( { 'placeholder': values.length ? '' :'Your text'});
              }
}