J'ai un <SELECT multiple>
champ avec plusieurs options et je souhaite lui permettre de ne sélectionner qu’une seule option à la fois, mais l’utilisateur peut maintenir la touche CTRL enfoncée et sélectionner plusieurs éléments à la fois.
Y a-t-il un moyen de le faire? (Je ne veux pas enlever 'multiple').
Il suffit de ne pas en faire un multiple de sélection, mais de lui attribuer une taille, telle que:
<select name="user" id="userID" size="3">
<option>John</option>
<option>Paul</option>
<option>Ringo</option>
<option>George</option>
</select>
Exemple de travail: https://jsfiddle.net/q2vo8nge/
Si l'utilisateur ne doit sélectionner qu'une seule option à la fois, supprimez simplement le "multiple" - effectuez une sélection normale:
<select name="mySelect" size="3">
<option>Foo</option>
<option>Bar</option>
<option>Foo Bar</option>
<option>Bar Foo</option>
</select>
Pourquoi ne voulez-vous pas supprimer l'attribut multiple
? Le but de cet attribut est de spécifier au navigateur que plusieurs valeurs peuvent être sélectionnées dans l'élément select
donné. Si vous ne devez sélectionner qu'une seule valeur, supprimez l'attribut pour que le navigateur sache qu'il ne permet qu'une seule sélection.
Utilisez les outils que vous avez, c'est à quoi ils servent.
J'ai eu quelques relations avec le select\multi-select c'est ce qui a fait le tour pour moi
<select name="mySelect" multiple="multiple">
<option>Foo</option>
<option>Bar</option>
<option>Foo Bar</option>
<option>Bar Foo</option>
</select>
<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.
Vous voulez une seule option par défaut, mais l'utilisateur peut sélectionner plusieurs options en appuyant sur la touche CTRL. C’est (déjà) exactement comment le multiple de SELECT doit se comporter.
Voir ceci: http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_select_multiple
Pouvez-vous clarifier votre question?
Je viens ici après avoir cherché google et changé de chose chez moi.
Donc, je viens de changer cet exemple et cela fonctionnera avec jquery au moment de l'exécution.
$('select[name*="homepage_select"]').removeAttr('multiple')