passer une fonction dans un parametre d'une propriété de classe
Bonjour (oui je sais il est tard mais je trouve pas de solution à mon problème :aie: ) ...
bon un petit exemple qui illustre mon problème :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| <html>
<head>
<script type='text/javascript'>
function MyClass(pNom, pPrenom)
{
this.nom = pNom;
this.prenom = pPrenom;
}
function MyClass.prototype.Test(res)
{
alert('ok');
alert(this.nom + " " + this.prenom);
}
function MyClass.prototype.appel(f)
{
alert('appel');
f();
}
function MyClass.prototype.debut()
{
this.appel(this.Test);
}
</script>
</head>
<body>
<input type="button" value="test" onclick="var o = new MyClass('le nom','le prenom'); o.debut();" />
</body>
</html> |
explication : je souhaite que lorsque j'appel une methode de ma classe, celle-ci appel une autre méthode en donnant le nom d'une troisieme autre methode (j'espere que vous m'avez comprit sinon suffit de voir les étappes -> debut -> appel -> Test)
bref; ce petit test demontre que ma reference "THIS" perd un peu les pedales lorsqu'il tombe dans la methodes Test.
Du coup, quand je veut faire this.nom et this.prenom il m'affiche "undefined" :cry: (j'imagine que THIS refere document ou un truc dans le genre...) :?
Cela peut paraitre absurde mais j'ai met raisons; je repete ceci n'est qu'une illustration.
Si quelqu'un peut m'aider à trouver une solution tout en gardant ce principe (methode qui appel une autre methode donner en parametre, le tout dans la meme classe) je vous serai EXTREMEMENT RECONNAISSANT !!!
sur ce; je vais dormir faire plein de cauchemard :aie: :cry: :cry: