PB avec valeur retour array
Bonjour, je souhaitais faire une liste déroulante liée, et j'ai suivi le schéma donné dans la FAQ, mais mon pb es que lorsque je récupère cette donnée dans mon listegenre et mon listedétail (voir mon code ci dessous) et que je l'insère dans ma base de donnée, je me retrouve avec les index des tableaux (par ex g1, et g1d1) et non les valeurs processeur, mémoire etc... alors que pourtant dans mes listes ces valeures sont bien présentes
merci de votre aide
code javascript
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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
var genre = new Array; //nouveau tableau
genre[0] = new Array("g0", "--Faites un choix--"); //nouveau tableau, on va donc avoir genre[0][0]="p0"
genre[1] = new Array("g1", "Materiel");
genre[2] = new Array("g2", "Logiciel");
var detail=new Array;
// liste10
detail["g0"] = new Array;
detail["g0"][0] = new Array("g0d0", "--Choisissez une rubrique--");
//liste21
detail["g1"]=new Array;
detail["g1"][0] = new Array("g1d0", "--Faites un choix--");
detail["g1"][1] = new Array("g1d1", "Processeur");
detail["g1"][2] = new Array("g1d2", "Memoire");
detail["g1"][3] = new Array("g1d3", "Ecran");
detail["g1"][4] = new Array("g1d4", "Disque dur");
detail["g1"][5] = new Array("g1d5", "Chassi");
detail["g1"][6] = new Array("g1d6", "Batterie");
detail["g1"][7] = new Array("g1d6", "Carte mere");
detail["g1"][8] = new Array("g1d7", "Autres");
//liste22
detail["g2"] = new Array;
detail["g2"][0] = new Array("g2d0", "--Faites un choix--");
detail["g2"][1] = new Array("g2d1", "Windows");
detail["g2"][2] = new Array("g2d2", "Virus");
detail["g2"][3] = new Array("g2d3", "Office");
detail["g2"][4] = new Array("g2d4", "Messagerie");
detail["g2"][5] = new Array("g2d5", "Autres");
function filltheselect(liste, choix)
{
switch (liste)
{
case "listegenre":
raz("listedetail");
for (i=0; i<detail[choix].length; i++)
{
new_option = new Option(detail[choix][i][1],detail[choix][i][0]);
document.ajout.elements["listedetail"].options[document.ajout.elements["listedetail"].length]=new_option;
}
break;
}
}
function raz(liste)
{
l=document.ajout.elements[liste].length;
for (i=l; i>=0; i--)
document.ajout.elements[liste].options[i]=null;
} |
la partie de ma page php avec mes listes déroulantes
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 26 27
|
</SELECT></td>
</tr>
<tr>
<td class="field">Choisir une rubrique *</b></td>
<!--=Selection de la premiere rubrique pour type erreur-->
<td class="value"><select name="listegenre" onChange='javascript:filltheselect(this.name,this.value)'>
<script language="javascript">
for (i=0; i<genre.length; i++)
document.write("<option value=\"" +genre[i][0]+ "\">" +genre[i][1]);
</script>
</select>
</td>
</tr>
<tr>
<!--=Selection de la seconde rubrique alimentée en fonction de la premiere-->
<td class="field" >Choisir une sous rubrique *</td>
<td class="value"><select name="listedetail" onChange='javascript:filltheselect(this.name, this.value)'>
<script language="javascript">
for (i=0; i<detail["g0"].length; i++)
document.write("<option value=\"" +detail["g0"][i][0]+ "\">" +detail["g0"][i][1]);
</script>
</select>
</td>
</tr>
<tr> |