2017-09-26 5 views
1

Je suis débutant chez Ext JS et je voudrais savoir s'il est possible de créer un champ de texte ou un composant différent et de l'insérer dans une cellule de grille. Je l'ai essayé jusqu'à présent (il ne me renvoie pas le composant):Est-il possible de renvoyer un objet TextField lors du rendu d'une cellule?

{ 
         header  : ..., 
         id   : ..., 
         dataIndex : ..., 
         sortable  : true, 
         width  : 140, 
         renderer: function(value, meta, record) { 
          return new Ext.form.TextField({fieldLabel: 'field', text: 'test'}); 
         } 
        } 

Je voudrais faire quelque chose de similaire avec cellEditing, mais je ne peux pas utiliser ce plugin parce que je travaille avec un plus version d'Ext (3.2.1).

Ma cible est d'afficher un fichier texte lorsque quelqu'un clique sur une cellule spécifique.

Merci.

Répondre

0

https://fiddle.sencha.com/#fiddle/27e7&view/editor

I sont retournés champ de saisie html à l'intérieur de la colonne de rendu.

Tout comme l'éditeur de cellule, j'ai défini la valeur de textfield. J'ai également ajouté la méthode du gestionnaire d'événements de flou dans laquelle vous pouvez écrire du code similaire à l'écouteur d'édition de l'éditeur de cellule.

Est-ce ce que vous cherchez? Ou d'autres changements. Vérifiez-le. Ajout de code ici:

renderer: function (value, meta, record) { 
       return "<input onblur='onBlurEventHandler(event)' value="+value+" style='width: 90 px;'></input>" 
      } 

function onBlurEventHandler(event){ 
    console.log('Value: '+event.currentTarget.value); 
}