Petit script pour des zones de texte dynamiques [Résolu]

Messages postés
26
Date d'inscription
mardi 14 janvier 2003
Statut
Membre
Dernière intervention
28 novembre 2006
- - Dernière réponse : cs_clenio
Messages postés
26
Date d'inscription
mardi 14 janvier 2003
Statut
Membre
Dernière intervention
28 novembre 2006
- 22 févr. 2006 à 07:27
héllo

Je suis en train de faire mes premiers pas (et premières armes) en php et javascript.
Mon code récupère la valeur du SELECT et doit afficher en conséquence des infos dans les zones de texte dynamique (

).
Mais ca marche pas !!! Y'a une erreur et j'arrive pas à la voir.

voici le code :
<html>
<head>
</head>

<SELECT name="liste" onChange="redraw(this)">
<option value="choix1">choix1</option>
<option value="choix2">choix2</option>
</SELECT>
div1 :
.

div2 :
.

div3 :
.

div4 :
.

<script language="Javascript">
//<!--
function redraw(select)
{
var table=new Array("choix1";"Antoine";"0";"choix1";"Clément";"10";"choix2";"Sylvain";"0");
var choix = select.value;
var index = 1;
for(i = 0;i < table.length;i += 3)
{
if(table[i] == choix)
{
document.all["DIV" + index].innerHTML = table[i + 1];
index++;
}
}
}
//-->
</script>

</html>

Merci d'avance.
Clénio
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
44
3
Merci
Bonjour,

il faut activer le debugger

avec IE télécharger le debugger commun VBScript et JavaScript
sur le site MicroSoft : gratis, permet de faire de pas à pas, de
visualiser les contenus des variables, aide à l'écriture...

avec FF, la console affiche au moins l'erreur et la ligne

°var table= new Array("choix1","Antoine","0","choix1","Clément","10","choix2","Sylvain","0");
des , pas des ;

°document.all["DIV" + index]....
document.getElementById("DIV"+index).... serait mieux
° for(i = 0;i < table.length;i += 3)
je ne vois pas bien à quoi ça sert puisque le select ne contient
que 2 options.
°
redraw(select) var table=
éviter pour les noms utilisés de prendre des noms
que le html/javascript connait et lui sont réservés.
° <option value="choix1">choix1</option>
pourquoi mettre une value = texte ?

... doit y avoir d'autres trucs, mais c'est normal en débutant.

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~
<FO>
</FO>
</S< body>

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 139 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_bultez
Messages postés
13619
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
44
3
Merci
j'ai oublié :

<script type="text/javascript">
<!--

Cordialement. Bul. ~ Mon Site qu'il est à Moi ~<FO>
</FO>
</S< body>

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 139 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_bultez
Messages postés
26
Date d'inscription
mardi 14 janvier 2003
Statut
Membre
Dernière intervention
28 novembre 2006
0
Merci
Merci bcp Bul pour ton aide.

Pour le document.all[], c'est pour IE. Dans mon code réel j'ai un if() else pour choisir entre Mozilla et IE. mais ca je sais que c'est bon donc j'ai pas voulu ralongé!

Pour le "table.length", c'est parce que le select est rempli par un requete sql donc la taille est variable. Ca aussi ca marche parfaitement, donc j'ai coupé lol.

Et pour la valeur des options, c'est pareil. C'est un identifiant en vrai et une chaine de caractère pour le texte.

Merci encore.
Je post ma source dès que tout marche
Commenter la réponse de cs_clenio

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.