2010-06-11 6 views
1

Je possède ce code:Comment sélectionner automatiquement l'élément sélectionné dans le menu liste après avoir envoyé le formulaire?

<form id="form2" name="form2" method="post" action=""> 
     <table dir="ltr" width="554" border="0" align="center" cellpadding="0" cellspacing="0"> 
     <tr> 
      <td width="269" class="da"><div align="center"><span id="spryselect1"> 
      <select onchange="form2.submit()" name="mpage" id="mpage"> 
       <option selected="selected" value="no">-----------</option> 
       <option value="medmo">Medmo.com</option> 
       <option value="paris">Paris.com</option> 
       <option value="imo">IMO.com</option> 
      </select> 
      </span></div></td> 
      <td width="214" class="t_b">Select Website</td> 
     </tr> 
     </table> 

    </form> 

Lorsque l'utilisateur de sélectionner une valeur, l'envoi du formulaire automatiquement, je veux l'élément que l'utilisateur a sélectionné pour être sélectionné après avoir soumis le formulaire.

Parce que je suis face à ce proplem:

L'utilisateur sélectionnez le premier élément (Medmo.com) -> Formulaire soumettre -> élément sélectionné sera "-------"

I veulent que cela se produise:

l'utilisateur sélectionnez le premier élément (Medmo.com) -> formulaire soumettre -> élément sélectionné sera « Medmo.com »

Comment puis-je faire cela?

Merci à l'avance.

+0

html simple, ou utilisez-vous PHP, ASP, rails, java, etc.? parce que tout le monde semble penser que php est le contexte –

+0

HTML + PHP + Javascript – Saleh

+0

ok, les balises éditées (je suis sorti ici, PHP n'est pas ma tasse de thé :-)) –

Répondre

3

une possibilité serait:

<option value="medmo"<? if($mpage=='medmo') echo ' selected="selected"'; ?>>Medmo.com</option> 
<option value="paris"<? if($mpage=='paris') echo ' selected="selected"'; ?>>Paris.com</option> 
<option value="imo"<? if($mpage=='imo') echo ' selected="selected"'; ?>>IMO.com</option> 
+0

uhm, la question dit html, pas php etc Comment savez-vous que vous pouvez exécuter du code dynamique? –

+0

je l'espère, parce que je ne sais pas comment faire cela sans code dynamique - et j'ai montré php parce que son largement utilisé (et faire la même chose dans tout autre langage dynamique serait très similaire) – oezi

+1

encore, une phrase comme "en supposant vous utilisez php "aurait été approprié. –

1

Une autre façon, plus élégante:

ids d'utilisation (numéros) et puis juste faire une boucle, pour vérifier si le numéro de poste correspond au numéro actuel, vous pouvez le faire avec un tableau:

 // 0 ,1, 2 
$ids = ('Medmo','Paris','Imo'); 
$selected = $_POST['mpage']; 
for($i=0;$i<count($ids);$i++) 
{ 
     if($ids[$i] == $selected) 
     { 
      $selected = 'selected="selected"'; 
     } 
     print '<option value="'.$i.'" '.$selected.'>'.$ids[$i].'.com</option>'; 

} 
+0

comme ci-dessus: la question dit html, pas php etc comment savez-vous que vous pouvez exécuter le code dynamique? –

0

vous ne pouvez pas le faire en html seul (ni en javascript).

lorsqu'un formulaire est soumis, une nouvelle page est chargée et vous n'avez aucune influence sur ce qui s'y passe.

afin que vous soit besoin d'un certain cadre côté serveur (php, rails, java, peu importe) ou vous pourriez travailler avec des cookies et javascript (stocker la valeur sélectionnée dans un cookie et initialiser la nouvelle page de cette valeur cookie)

Questions connexes