Titre: Alimenter une liste par une autre liste
Posté par: Balrog le le 13-03-2006 a 15:15:17
Salut,
J'ai trouvé un script sur Biblioscript.com qui devrait me permettre de remplir une liste a partir d'une autre liste dans un formulaire. Ceci marche, mais lorsque j'envoie les résultats, il y a un problème.
CODE DANS LE FORMULAIRE: <!-- Lancement de la fonction sur changement de la sélection --> <select name="list1" OnChange="populate('Location','list1','list2');"> <option value="">Choisissez...</option> <!-- Chaque option prend pour valeur la liste des items voulus dans la liste d'arrivée, séparés par des virgules (,) et re-séparés par des (£) pour les couples 'texte/valeur' --> <option value="Le cinema...£,ET l'extraterrestre£et,Indiana Jones£indy,Misery£misery,James Bond£007">Cinema</option> <option value="Le theatre...£,Boing-boing£boing,Voyage au bout de la nuit£voyage,Le roi Lear£lear">Theatre</option> <option value="La musique...£,Johnny Halliday£con,Mireille Matthieu£conne,Francis Cabrel£babacool,Lara Fabian£debile,Roch Voisine£brute,Patrick Bruel£patriiick">Musique</option> </select> <!-- Liste qui contiendra les nouvelles valeurs --> <select name="list2"> <option value="">_______________</option> </select>
En guise de valeur pour list1, le mail reçut donne l'intégrlaité de ce qu'il y a dans "value" (donc: Le cinema...£,ET l'extraterrestre£et,Indiana Jones£indy,Misery£misery,James Bond£007), ne peut-ont pas isoler juste cinema ou musique ou...
Je ne maitrise pas du tout le javascript, votre aide serait précieuse. Merci! |
Titre: Re: Alimenter une liste par une autre liste
Posté par: Deny le le 06-04-2006 a 14:51:23
Un peu long à faire... la valeur ici est un string. Le cinema...£ Si tu parts de ton option value, la fonction indexOf("£") va te ressortir 12, position comptée à partir de 0. Ensuite, document.forms[x].elements[y].options[z].value.slice(0,indexOf("£")-1) te ressort Cinéma. Mais si tu veux la suite il faut repartir de ce qui reste, pour trouver le suivant. reste = document.forms[x].elements[y].options[z].value.slice(indexOf("£")) Sélectionne toute la fin à partir du 13ème caractère. x le num du form, y le num du champ (select), z l'indice de l'option. |
Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.
|