Spec-Zone.ru › HTML

<datalist>: Элемент HTML списка данных

Ограниченная доступность

Эта функция не относится к Baseline, так как она не работает в некоторых из наиболее широко используемых браузеров.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Элемент <datalist> HTML содержит набор элементов <option>, которые представляют допустимые или рекомендуемые варианты, доступные для выбора в других элементах управления.

Попробуйте

Для привязки элемента <datalist> к элементу управления мы даём ему уникальный идентификатор в атрибуте id, а затем добавляем атрибут list к элементу <input> с тем же идентификатором в качестве значения. Только определённые типы элементов <input> поддерживают такое поведение, и оно также может варьироваться в зависимости от браузера.

Каждый элемент <option> должен иметь атрибут value, который представляет собой предложение для ввода в поле ввода. Он также может иметь атрибут label, или, если его нет, некоторое текстовое содержимое, которое может отображаться браузером вместо value (Firefox) или в дополнение к value (Chrome и Safari, в качестве дополнительного текста). Точное содержимое раскрывающегося меню зависит от браузера, но при нажатии на него введённое в поле управления содержимое всегда будет взято из атрибута value.

Примечание: <datalist> не является заменой для <select>. Элемент <datalist> не представляет собой поле ввода; это список рекомендуемых значений для связанного элемента управления. Элемент управления всё ещё может принять любое значение, которое проходит проверку, даже если оно не находится в этом списке предложений.

Атрибуты

У этого элемента нет других атрибутов, кроме общих атрибутов глобальных атрибутов для всех элементов.

Доступность

При принятии решения об использовании элемента <datalist> следует учитывать следующие вопросы доступности:

  • Размер шрифта параметров списка данных не масштабируется, всегда оставаясь неизменным. Содержимое автозаполнения не увеличивается и не уменьшается при масштабировании остального содержимого.
  • Так как настройка стилей списка опций с помощью CSS очень ограничена или отсутствует, отображение не может быть стилизовано для режима высокой контрастности.
  • Некоторые сочетания браузера и программы чтения с экрана, включая NVDA и Firefox, не объявляют содержимое всплывающего окна автозаполнения.

Примеры

Текстовые типы

Рекомендуемые значения в типах text, search, url, tel, email и number отображаются в раскрывающемся меню при щелчке или двойном щелчке по элементу управления. Обычно в правой части элемента управления также будет стрелка, указывающая на наличие предопределённых значений.

html
<label for="myBrowser">Choose a browser from this list:</label>
<input list="browsers" id="myBrowser" name="myBrowser" />
<datalist id="browsers">
  <option value="Chrome"></option>
  <option value="Firefox"></option>
  <option value="Opera"></option>
  <option value="Safari"></option>
  <option value="Microsoft Edge"></option>
</datalist>

Типы даты и времени

Типы month, week, date, time и datetime-local могут отображать интерфейс, позволяющий удобно выбирать дату и время. Предопределенные значения могут отображаться там, что позволяет пользователю быстро заполнить значение элемента управления.

Примечание: Если тип не поддерживается, будет использоваться тип text для создания простого текстового поля. Это поле будет корректно распознавать рекомендуемые значения и отображать их пользователю в раскрывающемся меню.

html
<input type="time" list="popularHours" />
<datalist id="popularHours">
  <option value="12:00"></option>
  <option value="13:00"></option>
  <option value="14:00"></option>
</datalist>

Тип диапазона

Рекомендуемые значения в типе range будут отображаться в виде ряда рисок, которые пользователь может легко выбрать.

html
<label for="tick">Tip amount:</label>
<input type="range" list="tickmarks" min="0" max="100" id="tick" name="tick" />
<datalist id="tickmarks">
  <option value="0"></option>
  <option value="10"></option>
  <option value="20"></option>
  <option value="30"></option>
</datalist>

Тип цвета

Тип color может отображать предопределённые цвета в интерфейсе, предоставляемом браузером.

html
<label for="colors">Pick a color (preferably a red tone):</label>
<input type="color" list="redColors" id="colors" />
<datalist id="redColors">
  <option value="#800000"></option>
  <option value="#8B0000"></option>
  <option value="#A52A2A"></option>
  <option value="#DC143C"></option>
</datalist>

Тип пароля

Спецификация позволяет связать <datalist> с типом password, но ни один браузер не поддерживает это из соображений безопасности.

html
<label for="pwd">Enter a password:</label>
<input type="password" list="randomPassword" id="pwd" />
<datalist id="randomPassword">
  <option value="5Mg[_3DnkgSu@!q#"></option>
</datalist>

Техническое описание

Категории содержимого Потоковое содержимое, фразовое содержимое.
Разрешённое содержимое Либо фразовое содержимое, либо ноль или более элементов <option>.
Пропуск тегов Нет, и открывающий, и закрывающий тег обязательны.
Разрешённые родительские элементы Любой элемент, принимающий фразовое содержимое.
Неявная роль ARIA listbox
Разрешённые роли ARIA Нет role разрешены
Интерфейс DOM HTMLDataListElement

Спецификации

Спецификация
Стандарт HTML
# the-datalist-element

Совместимость с браузерами

Рабочие столы Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox for Android Opera Android Safari на iOS Samsung Internet WebView Android
datalist 20 12
4Элемент <datalist> будет создавать раскрывающееся меню только для текстовых типов, таких как text, search, url, tel, email и number. Типы date, time, range и color не поддерживаются.
9.5 12.1 33
79Раскрывающееся меню, содержащее доступные варианты, не отображается. См. ошибку 1535985.
4–79
20 12.2 2.0 4.4.3

См. также

  • Элемент <input>, и в частности его атрибут list;
  • Элемент <option>.

© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/datalist

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API