marquer comme selected une valeur dynamique [RESOLU]

marquer comme selected une valeur dynamique [RESOLU] - HTML/CSS - Programmation

Marsh Posté le 30-12-2009 à 16:27:40    

Bonjour,
 
J'ai des listes déroulantes, en fait c'est des configurations de profil, du type Pays et autres, après enregistrement dans la bdd, dans la lecture en utilisant PHP, comment éviter de mettre sur chaque ligne une condition avant de marquer "selected", avec Js, j'imagine bien une boucle qui a la valeur qui parcourt la liste (le tableau ?) et ainsi marquer "selected" quand c'est la valeur recherché, j'ai du mal à concevoir la fonction, laquelle on donnera, deux arguments, l'id de la liste, nombre des champs et la valeur à marquer.
 
Merci d'avance,
 
Bien à vous,


Message édité par Nethacker le 30-12-2009 à 17:38:29
Reply

Marsh Posté le 30-12-2009 à 16:27:40   

Reply

Marsh Posté le 30-12-2009 à 16:34:38    

Ce que tu veux faire ne presente aucun interet, tu transforme un truc que tu maitrise totalement (le code HTML genere) en un machin qui peut foirer selon le navigateur et ne marchera jamais si l'utilisateur desactive le javascript.  
Ca n'aura meme pas de meilleures performances meme cote serveur, le temps de tester un simple string est negligeable meme en php, oublie simplement l'idee.

Reply

Marsh Posté le 30-12-2009 à 16:47:35    

J'ai des listes moins longues, style 2,3 entrées ou je dois apparemment devoir mettre

 
Code :
  1. <select id="mode" name="mode">
  2. <option <?php if($selected == 1) echo "selected=\"selected\"";?> value="1">Newest</option>
  3. <option <?php if($selected == 2) echo "selected=\"selected\"";?> value="2">Most Viewed</option>
  4. </select>
 

Mais je suis sûr qu'il y'a une méthode en Js, qui parcoure la totalité de la liste, tanpis si l'utilisateur a Js désactivé.


Message édité par Nethacker le 30-12-2009 à 16:51:49
Reply

Marsh Posté le 30-12-2009 à 17:06:09    

Bien sur qu'il y a, il faut ecrire une fonction qui parcoure la liste des options de ton select et mettre leur position selected a true. C'est bien plus chiant a debugger que le copier-coller du bout de code qui necessite simplement que tu mette a jour le test des valeurs.
Tu as plein d'exemple de manipulation de ces listes ici.
A adapter a ton cas.

Reply

Marsh Posté le 30-12-2009 à 17:36:20    

tout comme je l'imaginais, Merci beaucoup !

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed