Gros prob

cs_peter2010 Messages postés 48 Date d'inscription vendredi 25 septembre 2009 Statut Membre Dernière intervention 29 juillet 2010 - 26 sept. 2009 à 19:35
jdmcreator Messages postés 647 Date d'inscription samedi 30 décembre 2000 Statut Membre Dernière intervention 20 juillet 2012 - 27 sept. 2009 à 21:59
Bonjour je veux faire une liste dynamique en javascript à partir d'éléments(vecteurs) contenus dans un fichier .js externe,
j'ai donc créé une fonction qui parcours ce vecteur:

<script type="text/javascript">

function affichage()
{
for ( var i=0; i<vecteur.length; i++ )
{
var arr = document.getElementById("lstitem")
arr.options[i+1]=new option(vecteur[i], i)
}
}

</script>


Et ensuite je l'appele dans mon lstitem avec l'événement on change:

<select name="lstitem" id="lstitem" onchange="affichage()">
<option value="nil"> Choisissez un item </option>
</select>


Et sa ne fonctionne pas, quelqu'un peu m'aider?

Merci

6 réponses

cs_peter2010 Messages postés 48 Date d'inscription vendredi 25 septembre 2009 Statut Membre Dernière intervention 29 juillet 2010
27 sept. 2009 à 15:06
Personne peut m'aider????
0
jdmcreator Messages postés 647 Date d'inscription samedi 30 décembre 2000 Statut Membre Dernière intervention 20 juillet 2012 7
27 sept. 2009 à 15:38
Bonjour,

ton erreur était simple. Ce n'est pas "new option" mais "new Option" car Javascript est CaSe SEnSitIVe.

Ce code-ci fonctionne parfaitement :

<script type="text/javascript">
vecteur=new Array("a","b","c");
function affichage()
{
for ( var i=0; i<vecteur.length; i++ )
{
var arr = document.getElementById("lstitem").options[document.getElementById("lstitem").options.length]=new Option(vecteur[i], i)
}
}

</script>


Cordialement,

JDMCreator
--------
Participez au nouveau projet : la wiki sur le javascript !
fr.jsinfo.wikia.com
0
cs_peter2010 Messages postés 48 Date d'inscription vendredi 25 septembre 2009 Statut Membre Dernière intervention 29 juillet 2010
27 sept. 2009 à 15:44
Et je mets la propriété onchange à mon select?
0
cs_peter2010 Messages postés 48 Date d'inscription vendredi 25 septembre 2009 Statut Membre Dernière intervention 29 juillet 2010
27 sept. 2009 à 15:47
Voici ce que j'ai fait:

<script type="text/javascript">

function afficher()
{
for ( var i=0; i<vecteur.length; i++ )
var arr = document.getElementById("lstitem").options[document.getElementById("lstitem").options.length]=new Option(vecteur[i], i)
}

</script>


Et sa ne fonctionne pas, notez que je n'ai pas écrit vecteur=new Array("a","b","c"); car mon vecteur est déja déclaré dans un autre fichier infos.js que j'appelle en haut comme suit:
<script type="text/javascript" src="JavaScript/infos.js"></script>

Merci
0

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

Posez votre question
cs_peter2010 Messages postés 48 Date d'inscription vendredi 25 septembre 2009 Statut Membre Dernière intervention 29 juillet 2010
27 sept. 2009 à 16:14
Sa fonctionne... Maintenant je dois trouver une fonction qui fera en sorte qu'on affichera l'image et le prix de l'article sélectionné dans la liste...


Merci
0
jdmcreator Messages postés 647 Date d'inscription samedi 30 décembre 2000 Statut Membre Dernière intervention 20 juillet 2012 7
27 sept. 2009 à 21:59
Peut être en utilisant des Array d'Array ?

vecteur=new Array();
vecteur[0]=new Array();
vecteur[0][0]="Nom de l'article";
vecteur[0][1]="adressedelimage.jpg";
vecteur[0][2]="prix";
vecteur[1]=new Array();
vecteur[1][0]="Nom de l'article";
vecteur[1][1]="adressedelimage.jpg";
vecteur[1][2]="prix";

et ainsi de suite ;) Et tu peux modifier le script ainsi :

function afficher()
{
for ( var i=0; i<vecteur.length; i++ )
var arr = document.getElementById("lstitem").options[document.getElementById("lstitem").options.length]=new Option(vecteur[i][0], i)
}


JDMCreator
--------
Participez au nouveau projet : la wiki sur le javascript !
fr.jsinfo.wikia.com
0
Rejoignez-nous