Кратко

  • datalist передаёт редактируемому input предложения через атрибут list.
  • Браузер показывает и отбирает предложения, а человек может ввести другое допустимое значение.

Представьте окошко, где вам предлагают семь карточек с готовыми ответами и рядом кладут чистый лист. Многие веб-формы ведут себя иначе: выберите один из наших вариантов, даже если ваша жизнь ни на один не похожа. datalist привнёс более вежливый разговор. Автор готовит частые ответы, браузер показывает их возле поля, посетитель выбирает или продолжает печатать. Список помогает памяти, но не забирает у человека карандаш.

Первый опубликованный W3C черновик разметки HTML от марта 2010 года назвал datalist новым элементом для заранее заданных вариантов других элементов управления. В нём предусматривалось содержимое для старых браузеров. Новая подсказка входила в веб-мир, где за одной страницей могли встретиться программы разных поколений. Поддержка прежнего чтения была частью практической конструкции, а не украшением.

Справочник W3C 2011 года сохранил формулу: варианты для других элементов управления. Разделение здесь главное. datalist хранит подсказки; input принимает реальный ответ. Автор может отредактировать популярные названия, не превращая поле в пропускной пункт. Житель маленького города впишет свой город, даже если его не было на карточках, при условии что правила поля такой ввод допускают.

Текущий стандарт HTML в разделе форм считает подсказкой активный option с непустым значением. У варианта могут быть значение и подпись. Поле находит свой datalist по идентификатору из list. Подпись помогает человеку узнать нужную строку; при выборе в поле попадает значение. Так интерфейс может говорить понятно, а система сохранять устойчивую запись.

Правила ввода дают браузеру собственную работу. Пока человек редактирует поле, браузер предлагает варианты и может сократить длинный список. Поиск должен учитывать подписи и значения, нормализацию Unicode и регистр. Одинаковое на вид слово порой получается разными последовательностями символов. Хорошая подсказка узнаёт намерение человека по его печати, не требуя угадать внутренний словарь списка.

Выбранный вариант попадает в поле так, словно пользователь написал его сам. Другое допустимое значение тоже можно напечатать. Тип поля и обычные ограничения по-прежнему определяют возможность отправки. Список частых направлений сокращает путь к знакомому городу, оставляя место деревне за пределами каталога. Быстрый путь полезен именно тогда, когда дорога остаётся дорогой.

Роли распределены аккуратно: автор предлагает, браузер показывает, человек отвечает. Закрытое меню уместно там, где перечень действительно полный. Жизнь с поразительной регулярностью приносит восьмой ответ к списку из семи. datalist не обязан угадывать его заранее. Его лучшее качество — чистый лист рядом с карточками.