Attribuer un onclick à un élément & attribuer un argument à la fonction de l'event
Bonjour à tous,
je souhaite attribuer un argument à une fonction ajoutée en DOM sur des boutons créer dans une boucle.
Mon code :
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 createBoutons()
{
this.boutons = null ;
this.bouton = null ;
}
createBoutons.prototype.assignEvent = function()
{
var objet = this ;
for(var 1 = 0; i < boutons.length; i++)
{
bouton = document.getElementById(boutons[i]) ;
bouton.onclick = function(){ objet.catchEvent(i) ; } ;
}
}
createBoutons.prototype.catchEvent = function(value)
{
alert(value) ;
}
var cBtn = new createBoutons() ;
cBtn.boutons = Array("btn1", "btn2", "btn3") ;
cBtn.assignEvent() ; |
Lors d'un clic sur n'importe lequel des boutons l'argument "value" à toujours la même valeur, c'est à dire la dernière valeur qu'à pris "i". Si j'ai trois boutons "value" vaudra deux, si j'ai quatre boutons "value" vaudra trois.
Je souhaiterai savoir comment faire pour que les arguments de chaque boutons correspondent au "i" au moment de la création de l'écouteur d'évènement "onclick" et aussi comment savoir de quel bouton provient l'évènement.
Merci à tous pour vos réponses:).