<SELECT multiple> - как разрешить только один элемент?
У меня есть поле <SELECT multiple>
с несколькими параметрами, и я хочу разрешить ему иметь только одну опцию, выбранную одновременно, но пользователь может удерживать клавишу CTRL и одновременно выбирать несколько элементов.
Есть ли способ, как это сделать? (Я не хочу удалять 'multiple').
Ответы
Ответ 1
Просто не делайте его множественным выбором, но задайте ему размер, например:
<select name="user" id="userID" size="3">
<option>John</option>
<option>Paul</option>
<option>Ringo</option>
<option>George</option>
</select>
Рабочий пример:
https://jsfiddle.net/q2vo8nge/
Ответ 2
Если пользователь должен выбрать только один параметр одновременно, просто удалите "multiple" - сделайте нормальный выбор:
<select name="mySelect" size="3">
<option>Foo</option>
<option>Bar</option>
<option>Foo Bar</option>
<option>Bar Foo</option>
</select>
Fiddle
Ответ 3
Почему вы не хотите удалять атрибут multiple
? Вся цель этого атрибута - указать браузеру, что из данного элемента select
можно выбрать несколько значений. Если нужно выбрать только одно значение, удалите атрибут, и обозреватель узнает, что разрешит только один выбор.
Используйте инструменты, которые у вас есть, для чего они предназначены.
Ответ 4
По умолчанию требуется только одна опция, но пользователь может выбрать несколько опций, нажав клавишу CTRL. Это (уже) именно то, как должно себя вести SELECT multiple.
Смотрите это: http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_select_multiple
Можете ли вы прояснить свой вопрос?
Ответ 5
Я прихожу сюда после поиска google и изменения в моем конце.
Итак, я просто изменяю этот образец, и он будет работать с jquery во время выполнения.
$('select[name*="homepage_select"]').removeAttr('multiple')
http://jsfiddle.net/ajayendra2707/ejkxgy1p/5/
Ответ 6
У меня были некоторые сделки с select\multi-select
вот что помогло
<select name="mySelect" multiple="multiple">
<option>Foo</option>
<option>Bar</option>
<option>Foo Bar</option>
<option>Bar Foo</option>
</select>
Ответ 7
<select name="flowers" size="5" style="height:200px">
<option value="1">Rose</option>
<option value="2">Tulip</option>
</select>
Это простое решение позволяет получить визуально список опций, но для того, чтобы выбрать только один.