2009-07-01 15 views
0

J'ai une page Web contenant des étiquettes d'entrée comme celle ci-dessous par exemple.menu déroulant question, peut être simple peut-être pas

<input value='Cut' name='container_cut_button' type='submit/> 
<input value='Copy' name='container_copy_button' type='submit/> 

Je veux les mettre en un menu déroulant, j'espérais que ce serait quelque chose de simple comme

<select onchange='submit()'> 
    <option name='container_cut_button'>Cut</option> 
    <option name='container_copy_button'>Copy</option> 
</select> 

mais pas de chance,

Quelqu'un a des idées sur la façon dont cela pourrait être terminé?

Merci à l'avance

Répondre

0

J'ai appelé une fonction javascript dans l'étiquette de sélection. onchange = "exec (valeur)", la fonction obtient l'identifiant de sélection et insère l'attribut de nom approprié en fonction de sa valeur.

function exec(val){ 
    if(val=='cut'){ 
    document.getElementById("action").setAttribute("name", "cut") 
    } 
} 

Cela est bien passé

1

Utilisez l'attribut « valeur » des options plutôt que leur nom.

<select name="action"> 
    <option value="cut_item">Cut</option> 
    <option value="save_item">Save</option> 
</select> 

Sur le serveur, vous allez vérifier la valeur de la variable "action". Ce sera soit "cut_item" ou "save_item".

+0

le problème est que le menu déroulant va avoir de nombreux différents attributs nom par exemple. container_cut_button (coupe le contenu sur la page) container_copy_button (copie le contenu sur la page) 'donc j'espérais que ce serait aussi facile que de mettre les attributs du nom dans les balises

+0

Utilisez "valeur" au lieu de "nom" sur les options. – Sampson