144 votes

<SELECT multiple> - comment permettre qu'un seul élément soit sélectionné ?

J'ai un <SELECT multiple> avec plusieurs options et je veux permettre qu'une seule option soit sélectionnée en même temps, mais l'utilisateur peut maintenir la touche CTRL enfoncée et sélectionner plusieurs éléments à la fois.

Existe-t-il un moyen de le faire ? (Je ne veux pas supprimer "multiple").

5 votes

Quoi ? Pourquoi ? Cela nécessite plus d'explications.

5 votes

En n'utilisant pas de multiples avec votre sélection ? :)

6 votes

@GordonM ouais totalement :P Je cherchais la même chose aujourd'hui parce que je voulais plusieurs articles pour montrer (qui est implicite avec le multiple ) sans pouvoir réellement en sélectionner plusieurs. J'ai oublié que l'attribut permettant de faire cela s'appelait size La réponse du haut m'a donc bien servi :)

1voto

Ste Points 33
<select name="flowers" size="5" style="height:200px">
 <option value="1">Rose</option>
 <option value="2">Tulip</option>
</select>

Cette solution simple permet d'obtenir visuellement une liste d'options, mais de ne pouvoir en sélectionner qu'une seule.

1voto

Cogicero Points 711

Vous voulez qu'une seule option soit proposée par défaut, mais l'utilisateur peut sélectionner plusieurs options en appuyant sur la touche CTRL. C'est (déjà) exactement la façon dont le multiple SELECT est censé se comporter.

Regardez ça : http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_select_multiple

Pouvez-vous préciser votre question ?

0 votes

Awww Je comprends la question maintenant, grâce à Marcos Placona. La question initiale n'était pas bien formulée.

0 votes

Bien que je pense personnellement que l'expérience de l'utilisateur est "injuste" lorsque vous affichez plusieurs options de sélection mais que l'utilisateur ne peut en sélectionner qu'une.

0voto

DotNetFullStack Points 43

Réponse tardive mais qui pourrait aider quelqu'un d'autre, voici comment faire sans supprimer l'attribut "multiple".

$('.myDropdown').chosen({
    //Here you can change the value of the maximum allowed options
    max_selected_options: 1
});

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X