Comment fonctionne ElementById et onChange

Résolu
wolkyn Messages postés 6 Date d'inscription jeudi 29 janvier 2009 Statut Membre Dernière intervention 4 février 2009 - 29 janv. 2009 à 12:59
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 - 4 févr. 2009 à 15:23
Bonjour, je suis débutant et cherche voir comment fonctionne certaine methode.


J'ai cherché sur le site un forum m'expliquant simplement comment utiliser :

- ElementById

- Onchange


dans le cadre d'une application simple.


Je cherche juste a appliquer les deux dans un tableau a deux cases.


" La première case du tableau etant une liste ( select ) deroulante. En
fonction du choix, la valeur de la deuxième case change automatiquement
( sans cliquer sur un bouton ). "


Quelqu'un pourrait m'aider ? Je sais que la question doit être redondante mais je n'ai trouvé de réponse.

14 réponses

Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
1 févr. 2009 à 12:24
prend komodo edit par exemple
( j'usais de notepad++, mais il a quelques soucis actuellement,
  passagers je suis sûr, mais enn attendant ! )

<select  onchange="document.getElementById('truc').value= this.options[this.selectedIndex].value;">

car on voyait( avec notepad ) :
<select  onchange="document.getElementById("truc").value= this.options[this.selectedIndex].value">

[mon Site][M'écrire]Bul
3
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
29 janv. 2009 à 13:36
bonjour,

>>J'ai cherché sur le site un forum
c'est peut-être mieux avec un doc ?
perso j'use de selfHTML, en français, gratis,
        téléchargeable, version html/chm....
        pas complète, mais aucune ne l'est !

>- ElementById
   ça n'existe pas
   peut-être parles-tu de getElementById ?
   dans ce cas, c'est s'adresser à un élément du html s'il possède un ID

- Onchange
  c'est un évènement lié à un élément du html
  lorsqu'on change le contenu de cet élément, les ordres javascript
                décrits dans le onchange sont exécutés.

la suite... je n'ai pas compris ce que tu veux dire ni quel  est ton souci
peut-être parles-tu d'un select sans size, et donc sa 1ère option
est sélectionnée par défaut. pour déclenché le onchonge, il faut
d'abord cliquer sur une autre ligne !
solution ? _ mettre un size>1
               _ dès que le select a le focus mettre son selectedIndex à -1
              _ mettre une 1ère option bidon ( un titre ? )
                 et ne pas gérer l'option 0
              _ ....
Cordialement

          [mon Site] [M'écrire] Bul         
0
wolkyn Messages postés 6 Date d'inscription jeudi 29 janvier 2009 Statut Membre Dernière intervention 4 février 2009
29 janv. 2009 à 14:06
Merci pour la doc, je pense trouver beaucoup d'aide dedans.

Pour ce que je veux faire:

<tr>
<TD> <select  onchange=" ??">
<option value="choix" selected> choix < /option>
<option value="oui"> oui </option>
<option value="non"> non </option>
</select>
</td>

<td> </td>

je veux ecrire automatiquement dans le input YES si on choisit l'option oui et NO si on choisit l'option oui via la liste. Afin de comprendre la base et le mécanisme de onchange et par la même occasion de getElementById.

Cela est plus compréhensible ?
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
29 janv. 2009 à 14:16
et ben....    fais l !

met un id à ta balise "input text", tu pourras t'y référer avec getElementById
onchange : this.selectedIndex c'est le n° de l'option sélectionnée
               this.options[n° de l'option voulue].text ou .value c'est le text ou le .value
                     de l'option voulue
              ( je marque this, c'est si le javascript est mis directement dans la balise
                sinon.. tu devrais savoir le faire )

          [mon Site] [M'écrire] Bul       
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
29 janv. 2009 à 14:32
de plus, ne rien voir dans la cellule, ne signifie pas que sa taille = 0
elle peut contenir 2 espaces, voire 2 caractères non affichables
[mon Site][M'écrire]Bul
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
29 janv. 2009 à 14:33
oublier le dernier message, je m'a gouré de lieu  ;o(
[mon Site][M'écrire]Bul
0
wolkyn Messages postés 6 Date d'inscription jeudi 29 janvier 2009 Statut Membre Dernière intervention 4 février 2009
29 janv. 2009 à 14:47
Je suis nul !!

Mais non j'y arrive toujours pas. J'ai toujours pas compris le mécanisme de Onchange.

Voila mon code :

"<html>

<head><title>Test</title>
</head>

<tr>
<TD> <select  onchange="document.getElementById("truc").value= this.options[this.selectedIndex].value">
<option value="choix" selected> choix </option>
<option value="yes"> oui </option>
<option value="no"> non </option>
</select>
</td>

<td> </td>

</html>

"

Ou est l'erreur ?? Pourquoi le onchange de renvois pas la valeur de l'option dans le input ??

Merci d'avance.
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
29 janv. 2009 à 15:00
1° si tu utilisais un éditeur de texte avec coloration
   syntaxique, tu verrais l'erreur immédiatement

2° déboguer est possible  :
Navigateurs |Quelques Expplications |----
Chrome
, contrôler page actuelle / Options pour développeurs
/ Console Javascript, ----
FireFox
, Outils / Console d'erreurs
et mieux : télécharger mon Site][M'écrire]Bul
0
wolkyn Messages postés 6 Date d'inscription jeudi 29 janvier 2009 Statut Membre Dernière intervention 4 février 2009
1 févr. 2009 à 12:09
J'utilise jedit qui colore le ligne de code ( mais n'indique pas les erreurs ). De plus j'ai firebug mais je n'arrive pas de comprendre comment il fonctionne.

Comme tu peux le voir je débute et n'ai pas encore les bons automatismes.

J'arrive toujours pas a faire ce que je veux ... Et pourtant c'est le béaba de onchange.
0
wolkyn Messages postés 6 Date d'inscription jeudi 29 janvier 2009 Statut Membre Dernière intervention 4 février 2009
1 févr. 2009 à 12:29
MDR ... Avec notepad ou komodo je pourrais voir ce type d'erreur ??

En tout cas merci de ta patience et de ton aide.
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
1 févr. 2009 à 14:46
MDR ? ça veut dire quoi ? que tu es Mort De Rire ?
je ne vois pas pourquoi, je ne vois pas où j'ai prêté à rire ???
quand aux outils, mon foie, tu utilises ceux qui te conviennent.
Mais tu ne parlais pas de FireFox ? regarde la console
d'erreurs au moins, : tout est dit, ou presque, je pense,
en étant mort de rire à mon tour : si ce n'est pas
le cas, teste avec un autre navigateur ;o)))
[mon Site][M'écrire]Bul
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
1 févr. 2009 à 14:54
et aussi... fais comme je te montre..
ça fonctionne.
[mon Site][M'écrire]Bul
0
wolkyn Messages postés 6 Date d'inscription jeudi 29 janvier 2009 Statut Membre Dernière intervention 4 février 2009
4 févr. 2009 à 14:47
Merci de l'aide ça fonctionne très bien...

Pour la console de firefox je n'ai pas encore compris tout son foonctionnement.
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
4 févr. 2009 à 15:23
Outils / conSole d'erreurs
ça te donne le libellé de l'erreur, la ligne...
et, regarde le tableau de la 1ère page qui cause deboggage
[mon Site][M'écrire]Bul
0
Rejoignez-nous