Элемент пользовательского интерфейса HTML для выбора одного или нескольких опция (опции) от конечного набора опций.

Выбор (<select>) Элемент HTML представляет управление пользовательским интерфейсом, которое представляет меню опций. Опции в рамках меню представлены <option> элементы, отправленные значения которых определяются value атрибут.

<select name="myselect"> <option value="some-text">Some Text</option> </select> 

Единственный по сравнению с меню множественного выбора

Единственные меню выбора являются меню по умолчанию, что Вы находите намного больше опции. Пользователям только разрешают выбрать одну опцию из выпадающего списка опций. Размер управления может также быть изменен для размещения для более длинного меню, которое просматривает опции путем прокрутки вместо того, чтобы создать выпадающую из опций. Любое время размер 2 или больше используется, меню, станет полем с возможностью прокрутки вместо этого. Указанный размер будет включать то число вариантов в видимую область меню выбора (настолько определяющий размер 4 отобразит 4 опции высоко с полосой прокрутки). Для установки размера просто добавьте size="4" к <select> элемент, указывая любой размер Вы требуете.

Меню множественного выбора должны всегда иметь размер по крайней мере 2 как определение, что его размер в 1 вызовет проблемы рендеринга браузера (он не создаст полосу прокрутки). Так как несколько опций могут быть выбраны, эти меню не могут использовать выпадающую функцию. По умолчанию, когда избранное меню превращено в меню множественного выбора, оно наследовало размер 4.

Синтаксис для множественного выбора

<select multiple="multiple">...</select> 

Примечание: В то время как большинство браузеров все еще представит меню правильно, только используя multiple, это считают недопустимым синтаксисом, и необходимо всегда использовать полное multiple="multiple" формат при установке меню на множественный выбор. Нет никакого другого допустимого значения (такой как "единственный"), который может присутствовать в этом атрибуте.

Множественный выбор и сценарии серверной стороны

Когда отправка Вашего меню множественного выбора к сценарию серверной стороны по почте или ДОБИРАЕТСЯ, Вы заметите, что некоторые языки серверной стороны не проанализируют все выбранные значения (если больше чем один), и создайте массив. Вместо этого это только даст Вам последнюю опцию, которая выбрана в меню. Для фиксации этого мы можем изменить имя меню выбора для составления всех опций путем помещения их в массив, указав [] в конце. Это будет работать на большинство языков программирования, включая PHP.

<select multiple="multiple" name="myselect[]">...</select> 

Предварительный выбор опции

Предварительный выбор удобен для того, чтобы предоставить возможность по умолчанию, которую средний пользователь выбрал бы или что система рекомендует использоваться (такие как настройка конфиденциальности). Любая опция может быть выбрана по умолчанию. При использовании с меню множественного выбора, столько опций, сколько желаемый может быть выбран по умолчанию. Однако при использовании с единственным меню выбора последняя опция, которая установлена столь же выбранная, появится, как выбрано при рендеринге браузером. Если никакая опция не будет установлена быть выбранной в единственном меню выбора, то первая опция в меню будет выбрана по умолчанию. Обычно, эту опцию оставляют как пустое значение для легкого обнаружения сценарии серверной стороны того, выбрал ли пользователь что-нибудь.

Синтаксис для предварительного выбора

<option value="some-text" selected="selected">Some Text</option> 

Примечание: В то время как большинство браузеров все еще представит меню правильно, только используя selected, это считают недопустимым синтаксисом, и необходимо всегда использовать полное selected="selected" формат при предварительном выборе опции. Нет никакого другого допустимого значения (такого как "ни один" или "отмененный выбор"), который может присутствовать в этом атрибуте.

Собирание в группу опций

Можно далее организовать опции в "категории" при помощи <optgroup> элемент, который (как Вы предположили бы) группирует опции в нем в соответствии с определенным заголовком. Этот заголовок появляется в немного отличающемся стиле выше группы опций, которые это представляет и не может быть выбрано пользователем (только опция может). Кроме того, просто потому что некоторые опции в группе опции, не означает, что все опции должны быть внутренней. Заголовок, который используется, указан label атрибут. Например:

<optgroup label="Apples"> <option value="granny-smith">Granny Smith</option> <option value="red-delicious">Red Delicious</option> </optgroup> <option value="bananas">Bananas</option> 

Поддержка браузера

<select> тег поддерживается всеми браузерами.