J’écris ce post parce que j'ai cherché la solution pendant longtemps et j'ai lu sur le forum des reponses qui peuvent induire en erreur.
1 2 3 4 5 6 7 8 9
| var liens = elm.getElementsByTagName("a");
var lien;
for (var i = 0; i < liens.length; i++) {
lien = liens[i];
if (lien.onclick) {
lien.onclick = function () { arbreOrphelins.select(lien.id); };
lien.setAttribute('onclick', function () { arbreOrphelins.select(lien.id); });
}
} |
Voilà le code que j'ai et il y a deux problèmes :
* Javascript considère lien.id comme une chaine de caractère et ne l'evalue.
* Quand je remplace ma fonction par une fonction avec un parametre non variable (comme dans le setAttribute) ça change l'ecriture du onclick dans firebug j'ai bien onclick=function().... mais ça marche pas.
En fait il suffit de faire
lien.setAttribute('onclick', "arbreOrphelins.select("+lien.id+");");
Voilà !
Partager