web-dev-qa-db-fra.com

Extjs Grid - écouteur d'événements Click

J'ai réussi à ajouter un écouteur d'événement de double-clic de ligne à ma grille en:

listeners : {
    itemdblclick: function(dv, record, item, index, e) {
        alert('working');
    }
},

Maintenant, je dois obtenir la valeur exacte dans la troisième colonne à la ligne sélectionnée, comment puis-je faire cela?

MODIFIER

Ok l'a trouvé:

listeners: {
    itemclick: function(dv, record, item, index, e) {
        alert(record.get('name'));
    }
}

mais il semble que le résultat de record.get('name') ne soit pas un texte! c'est un objet mais je ne peux pas le gérer comme s'il s'agissait d'un texte. tout corps a une idée?

MODIFIER

Par exemple, si je passe le nom à la fonction de recherche: Search(record.get('name'));, cela ne fonctionnera pas. mais si je le passe de cette façon: Search('Mike'); ça marche!

9
Noon

Veiller à ce que

  • Le nom de votre propriété est vraiment 'minuscule' nom 'et non' nom '
  • Imprimez la valeur du champ dans la console avec console.log(record.get('name')) ou utilisez l'accès direct en tapant console.log(record.data.name) ou console.log(record.data['name']). Fondamentalement, tout devrait retourner le même.
  • Pour convertir une valeur en chaîne, appliquez '' à la volée comme var myVar = 2; myVar = myVar + ''; // now print 20 as string
4
sra

Essayez avec,

listeners: {
itemclick: function(dv, record, item, index, e) {
 var selectedRec = dv.getSelectionModel().getSelected();          
 alert(selectedRec.get('name')); //Will display text of name column of selected record
}
0
AJJ