— HTML: язык гипертекстовой разметки
элементы типа search
— это текстовые поля, предназначенные для ввода пользователем поисковых запросов. Они функционально идентичны текстовым
вводам, но могут быть стилизованы по-разному агентом пользователя.
Атрибут value
содержит строку, представляющую значение, содержащееся в поле поиска. Вы можете получить это, используя свойство HTMLInputElement.value
в JavaScript.
searchTerms = mySearch.value;
Если для ввода не установлены ограничения проверки (дополнительные сведения см. в разделе Проверка), значение может быть любой текстовой строкой или пустой строкой ( ""
).
В дополнение к атрибутам, которые работают со всеми элементами
независимо от их типа, входные данные поля поиска поддерживают следующие атрибуты.
список
Значения атрибута списка id
maxlength
Максимальное количество символов (в единицах кода UTF-16), которое пользователь может ввести в поле поиска. Это должно быть целочисленное значение от 0 или выше. Если нет указано maxlength
или указано неверное значение, поле поиска не имеет максимальной длины. Это значение также должно быть больше или равно значению minlength
.
Ввод не пройдет проверку ограничения, если длина текста, введенного в поле, превышает maxlength
единиц кода UTF-16.
minlength
Минимальное количество символов (в единицах кода UTF-16), которое пользователь может ввести в поле поиска. Это должно быть неотрицательное целочисленное значение, меньшее или равное значению, указанному в максимальная длина
. Если minlength
не указано или задано недопустимое значение, у входных данных поиска нет минимальной длины.
Поле поиска не пройдет проверку ограничения, если длина текста, введенного в поле, меньше minlength Длина
единиц кода UTF-16.
шаблон
Атрибут шаблон
, если он указан, является регулярным выражением, которому входное значение
должно соответствовать, чтобы значение прошло проверку ограничения. Это должно быть допустимое регулярное выражение JavaScript, используемое типа RegExp
, как описано в нашем руководстве по регулярным выражениям; флаг 'u'
указывается при компиляции регулярного выражения, чтобы шаблон обрабатывался как последовательность кодовых точек Unicode, а не как ASCII. Вокруг текста шаблона не должно указываться косая черта.
Если указанный шаблон не указан или недействителен, регулярное выражение не применяется и этот атрибут полностью игнорируется.
Примечание: Используйте атрибут title
для указания текста, который большинство браузеров будет отображать в качестве всплывающей подсказки, чтобы объяснить, какие требования должны соответствовать шаблону. Вы также должны включить другой пояснительный текст рядом.
Подробнее и пример см. в разделе «Задание шаблона».
заполнитель
Атрибут заполнитель
представляет собой строку, которая предоставляет пользователю краткую подсказку относительно того, какая информация ожидается в поле. Это должно быть слово или короткая фраза, демонстрирующая ожидаемый тип данных, а не поясняющее сообщение. Текст не должен включать в себя возврат каретки или перевод строки.
Если содержимое элемента управления имеет одну направленность (LTR или RTL), но необходимо представить заполнитель в противоположном направлении, вы можете использовать символы форматирования двунаправленного алгоритма Unicode для переопределения направленности внутри заполнителя; Дополнительные сведения см. в разделе Как использовать элементы управления Unicode для двунаправленного текста.
Примечание: По возможности избегайте использования атрибута-заполнителя
. Это не так полезно с семантической точки зрения, как другие способы объяснения вашей формы, и может вызвать неожиданные технические проблемы с вашим контентом. Дополнительную информацию см. в разделе Метки и заполнители в : элемент ввода (ввод формы).
только для чтения
Логический атрибут, который, если присутствует, означает, что это поле не может быть отредактировано пользователем. Однако его значение
по-прежнему может быть изменено кодом JavaScript, непосредственно устанавливающим свойство HTMLInputElement
value
.
Примечание: Поскольку поле только для чтения не может иметь значения, обязательное
не влияет на входные данные с атрибутом только для чтения
.
размер
9Атрибут 0003 size представляет собой числовое значение, указывающее, сколько символов должно быть в поле ввода. Значение должно быть числом больше нуля, а значение по умолчанию равно 20. Поскольку ширина символов различается, это может быть или не быть точным, и на это не следует полагаться; результирующий ввод может быть уже или шире, чем указанное количество символов, в зависимости от символов и шрифта (используемые настройки шрифта
).
Это означает, что , а не устанавливает ограничение на количество символов, которые пользователь может ввести в поле. Он лишь указывает приблизительно, сколько можно увидеть одновременно. Чтобы установить верхний предел длины входных данных, используйте кнопку 9.0003 maxlength атрибут.
проверка орфографии
проверка орфографии
— это глобальный атрибут, который используется для указания, следует ли включать проверку орфографии для элемента. Его можно использовать на любом редактируемом контенте, но здесь мы рассмотрим особенности, связанные с использованием
на элементах
. Допустимые значения для проверки орфографии
:
-
ложь
Отключить проверку орфографии для этого элемента.
-
правда
Включить проверку орфографии для этого элемента.
- «» (пустая строка) или нет значения
Следуйте стандартному поведению элемента для проверки орфографии. Это может быть основано на родительской настройке
проверки орфографии
или других факторах.
В поле ввода может быть включена проверка орфографии, если для него не установлен атрибут readonly и он не отключен.
Значение, возвращенное чтением проверка орфографии
может не отражать фактическое состояние проверки орфографии в элементе управления, если настройки пользовательского агента переопределяют настройку.
Для поиска полей ввода доступны следующие нестандартные атрибуты. Как правило, вам следует избегать их использования, за исключением случаев, когда это бесполезно.
autocorrect
Расширение Safari, атрибут autocorrect
представляет собой строку, указывающую, активировать ли автоматическое исправление, пока пользователь редактирует это поле. Допустимые значения:
-
на
Включить автоматическое исправление опечаток, а также обработку текстовых подстановок, если таковые настроены.
-
Отключить автоматическое исправление и замену текста.
инкрементный
Логический атрибут инкрементный
— это расширение WebKit и Blink (поэтому поддерживается Safari, Opera, Chrome и т. д.), которое, если присутствует, указывает агенту пользователя обрабатывать ввод как поиск в реальном времени. Когда пользователь редактирует значение поля, пользовательский агент отправляет поиск
событий в объект HTMLInputElement
, представляющий поле поиска. Это позволяет вашему коду обновлять результаты поиска в режиме реального времени по мере того, как пользователь редактирует поиск.
Если incremental
не указан, событие search
отправляется только тогда, когда пользователь явно инициирует поиск (например, нажимая клавишу Enter или Return при редактировании поля).
Событие search
ограничено по скорости, поэтому оно не отправляется чаще, чем интервал, определенный реализацией.
mozactionhint
Расширение Mozilla, которое дает подсказку о том, какое действие будет выполнено, если пользователь нажмет клавишу Enter или Return при редактировании поля.
Этот атрибут устарел: вместо него используйте глобальный атрибут enterkeyhint
.
результатов
Атрибут результатов
— поддерживается только Safari — представляет собой числовое значение, позволяющее переопределить максимальное количество записей, отображаемых в
встроенное раскрывающееся меню предыдущих поисковых запросов элемента.
Значение должно быть неотрицательным десятичным числом. Если не указано или задано недопустимое значение, используется максимальное количество записей браузера по умолчанию.
Элементы типа search
очень похожи на элементы типа text
, за исключением того, что они специально предназначены для обработки условий поиска. По сути, они эквивалентны по поведению, но пользовательские агенты могут выбирать для них разные стили по умолчанию (и, конечно же, сайты могут использовать таблицы стилей для применения к ним пользовательских стилей).
Базовый пример
<форма> <дел>