2010-08-27 1 views
6

Je textfield:Comment cacher le champ de texte avec l'étiquette?

  { 
       xtype: 'textfield', 
       fieldLabel: 'LBL_EMAIL', 
       anchor: '100%', 
       listeners: { 
        'render': function(p) { 
         // check certain conditions 
         this.hide() 
        } 
       }, 
      }, 

"hide()" ne cache que zone de texte (sans étiquette) et je veux cacher la ligne entière (zone de texte et l'étiquette). Des idées?

+0

Oh, je vais essayer de le faire dans les auditeurs parce que je veux montrer/cacher après quelques vérifications ... –

Répondre

8

J'ai trouvé une solution, je dois configurer le FormLayout avec:

trackLabels: true 
2

réponse de Maciej ne fonctionne pas plus moi. Mettre cela dans les paramètres par défaut de Ext a fait:

Ext.layout.FormLayout.prototype.trackLabels = true;

+1

PUT "trackLabels" dans "layoutConfig" comme: layoutConfig: { \t \t \t \t \t \t trackLabels: true \t \t \t \t \t} – user427969

0

Utilisez quelque chose comme:

yourElement.container.up('div.x-form-item').hide(); 
1

je devais faire ci-dessous pour le faire fonctionner.

{ 
    xtype: 'textfield', 
    anchor: '100%', 
    listeners: { 
     'render': function(p) { 
      // hide label 
      Ext.getCmp('cluster_name').getEl().up('.x-form-item').setDisplayed(false); 
     } 
    }, 
}, 
1
Ext.getCmp('id of textfield').hide();