[POO] accès à une méthode
Salut,
Soit le petit script suivant qui crée une balise DIV et un gestionnaire d'événement avec onclick. Le souci c'est que dans cette méthode, le this renvoie au DIV et non plus l'objet. Ce qui fait que je ne peux plus accéder aux autres méthodes. Voyer la ligne en rouge dans le code ci-dessous.
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
| function cityObj(name,id)
{
this.name = name
this.id = id
this.div = document.createElement("div");
this.div.id = this.id;
this.createDiv = function(){
document.getElementById('container').appendChild(this.div);
this.div.appendChild(document.createTextNode(name));
}
this.div.onclick = function(){
this.setForm() // ne fonctionne pas
document.getElementById('newForm').elements[0].focus()
}
this.setForm = function(){
var content = '<form action="" method="POST" id="newForm">';
content += '<input type="text" name="data_'+this.id+'" value="'+this.name+'" />';
content += '</form>';
this.div.innerHTML = content;
}
} |
Comment appeler la méthode setForm depuis this.div.onclick ?