Fonction javascript récalcitrante

Description de la tache a effectué :
j’ai X fois
et X boutons
X etant variable
Je veux, en cliquant sur le bouton n°Y, modifier la value de l’input text n°Y.

Voici le code exemple :

[html]


[/html]

Il ne reconnait pas document.all.inputvar.innerText comme étant un objet… En remplacant inputvar par var1 ou var2… La modification de var1/2 s’effectue… Donc c’est l’assignation de « inputvar » qui cloche. Je vois pas trop comment faire :confused:

A l’aide >_<

En jouant avec les id, c’est plus simple je trouve.
Je dis ça, mais je ne sais pas si tu comptes passer par des ids ou nan.

[code]


[/code]

edit : xhtml :stuck_out_tongue:

Voila, il a raison le monsieur :stuck_out_tongue:
Il faut utiliser getElementById, c’est le moyen le plus immediat pour trouver un element par son ‹ nom ›. Dans le code de Terenas, inputVar est juste une chaine de characteres, et quand tu fait document.all.inputVar, javascript cherche un object qui s’apelle ‹ inputVar › dans la DOM du document… Il va pas comprendre tout seul que ton inputVar c’est en fait une variable locale, et qu’il faut utiliser sa valeur pour chercher un object par son nom…

Enfin bref, c’est pas facile a expliquer, je vois la ou c’est pas peut etre pas evident pour un codeur cela dit :stuck_out_tongue:
Surtout en javascript, ou y a plein de moyen farfelus de faire les choses.

Petite note au cas ou, si c’est trop le bordel de donner un nom different a chaque ensemple d’input/bouton, tu peux faire onclick=test(this), et dans ta methode test, remonter d’un niveau dans la hierarchie de la DOM en partant de this pour trouver ensuite l’input qui correspond (dans la mesure ou ton input et ton bouton sont uniques sous le meme parent).

Merci bien les gens !
JS c’est vraiment un langage de chien, je trouve :stuck_out_tongue:

@ Kasper : Nice edit ^.^;
J’ai pas eu le reflexe non plus de taper vite fait le code exemple en xhtml 1.0.
Et je le ferai pas car j’crois avoir mieux à faire en fait xD

[quote name=‹ Kasper › date=’ 3 Dec 2004, 23:00’]En jouant avec les id, c’est plus simple je trouve.
Je dis ça, mais je ne sais pas si tu comptes passer par des ids ou nan.

[code]


[/code]

edit : xhtml :stuck_out_tongue:
[right][post=« 309798 »]<{POST_SNAPBACK}>[/post][/right][/quote]

Juste pour ajouter que si il veut pas bosser avec des Id il peut faire un document.getElementsByName( ‹ var › + i )[0].value, ça devrait jouer aussi :stuck_out_tongue:

[quote name=‹ Terenas › date=’ 4 Dec 2004, 10:38’]JS c’est vraiment un langage de chien, je trouve :stuck_out_tongue:

[right][post=« 309851 »]<{POST_SNAPBACK}>[/post][/right][/quote]

Rhooo faut pas dire cela voyons. Pour faire des trucs côté client et réduire les allers/retours client/serveur il est indispensable.
Moi j’aime bien le javascript : quoiqu’on en dise son utilité dans le webdev est indéniable. :stuck_out_tongue:

Le javascript, est très bien, surtout quand on respecte les normes de programmation.
Je peste quand je vois des codes sources fait pour tourner seulement sous IE.
rhaa, c’est souvent la merde à reprendre.

Sinon tu pouvais utiliser toto=eval(“document.all.var”+i)
ce qui te permet de stocker dans la variable toto, un pointeur vers l’objet evalué.
(si je dis pas de conneries)