2010-10-16 4 views
1


i ont cette classe javascriptmembres de la classe d'accès de fonctions imbriquées

var MyGird = Class.extend({ 
    classMemeber1 : "Some Value" 
    ,clickEvent : function(){ 
     this.editor.on({ 
      afteredit: function() { 
       // 
       // HOW TO I ACCESS classMemeber1 from here? ? 
       // 
       // 
      } 
     }) 
}) 

Comment accéder classMemeber1 à l'intérieur de AfterEdit ...
Merci

+0

Quel framework JS utilisez-vous? On dirait que ce que tu fais ici est plus complexe que je ne le pensais. –

+0

Extjs mais c'est une classe qui enveloppe Extjs Grid – fatnjazzy

Répondre

7

Vous devez enregistrer une référence à l'objet appelant la fonction clickEvent en stockant this[1] dans une variable. Il sera disponible à l'intérieur de la méthode afteredit en raison de fermeture.

var MyGird = Class.extend({ 
    classMemeber1: "Some Value", 
    clickEvent: function() { 
     var self = this; // save object reference 
     this.editor.on({ 
      afteredit: function() { 
       // access classMemeber1 from here 
       // by using the stored reference 
       alert(self.classMemeber1); 
      } 
     }); 
    }, 
    // ... 
}); 

[1] this operator in javascript (note: 'ce' n'est pas un opérateur)

Questions connexes