Создание настраиваемой области действий для области форм
Twitter LinkedIn Facebook Адрес электронной почты
- Статья
- Чтение занимает 3 мин
Можно указать настраиваемые действия для области форм. По умолчанию для любого региона форм существует четыре встроенных действия. Чтобы создать действие, удовлетворяе вашим потребностям, можно изменить встроенное действие или создать новое настраиваемого действия. Дополнительные сведения об изменении встроенного действия см. в дополнительных сведениях о том, как изменить встроенное действие для области форм.
При создании настраиваемой меры можно указать следующие характеристики в XML-файле манифеста формы, который вы регистрируете для области форм:
- Имя отображения для настраиваемой акции.
- Будет ли пользовательское действие отображаться на ленте инспектора.
- Способ решения в результате элемента.
- Класс сообщений элемента, который является результатом выполнения действия.
- Способ, включающий тело текущего элемента в итоговом элементе.
- Способ, который Outlook при выполнении действия.
- Значение префикса в объекте в результате элемента.
Дополнительные сведения о регистрации области форм см. в дополнительных сведениях о регионах форм в Windows реестра.
Определение действий для области форм
Независимо от того, хотите ли вы изменить встроенное действие или создать настраиваемые действия, вы определяете действие в XML-файле манифеста формы. Определите эти действия в элементе customActions, заключив каждое действие в свой собственный элемент действия и идентифицируя его по обязательному атрибуту имени. Значение атрибута имени — это строка, представляюная внутреннее имя действия.
Указать внутреннее имя для действия
- В XML-файле области формы укажите действие как элемент действия ребенка элемента customActions для этого региона формы.
- Укажите внутреннее имя действия как значение атрибута имени элемента действия .
В следующем примере назначается replyToBlog
внутреннее имя одного настраиваемого действия и postToBlog
внутреннее имя другого настраиваемого действия:
<customActions> <action name="replyToBlog"> <!-- further characterize this action --> </action> <action name="postToBlog"> <!-- further characterize this action --> </action> </customActions>
Определение настраиваемой меры
После определения действия в элементе действия можно дополнительно определить действие, указав дополнительные детские элементы для элемента действия.
Определение имени отображения для действия
- В XML-файле области формы укажите действие как элемент действия ребенка элемента customActions для этого региона формы.
- Укажите внутреннее имя действия как значение атрибута имени элемента действия .
- Укажите отображаемого имени действия как значение элемента заголовка ребенка элемента действия .
В следующем примере назначается replyToBlog
внутреннее имя настраиваемого действия, Reply to Blog
а также отображаемая фамилия действия:
<customActions> <action name="replyToBlog"> <title>Reply to Blog</title> <!-- Further characterize this action --> </action> </customActions>
Чтобы указать, что действие должно отображаться на ленте инспектора
- В XML-файле области формы укажите действие как элемент действия ребенка элемента customActions для этого региона формы.
- Укажите внутреннее имя действия как значение атрибута имени элемента действия .
- Укажите Значение True как значение элемента showOnRibbon для ребенка элемента действия.
В следующем примере replyToBlog
назначается внутреннее имя настраиваемого действия и указывается, что оно не должно отображаться в ленте инспектора:
<customActions> <action name="replyToBlog"> <showOnRibbon>false</showOnRibbon> <!-- Further characterize this action --> </action> </customActions>
Примечание
Вы можете назначить showOnRibbon как строковую, так и нитку. Указание True или 1 отображает действие на ленте; Указание False или
Чтобы указать способ решения в результате элемента
- В XML-файле области формы укажите действие как элемент действия ребенка элемента customActions для этого региона формы.
- Укажите внутреннее имя действия как значение атрибута имени элемента действия .
- Укажите значение для детского элемента addressLike элемента действия .
В следующем replyToBlog
примере назначается внутреннее имя настраиваемого действия и указывается, что в результате новый элемент будет адресован как элемент для всех ответов, при этом все исходные получатели будут скопированы на новый элемент:
<customActions> <action name="replyToBlog"> <addressLike>replyAll</addressLike> <!-- Further characterize this action --> </action> </customActions>
Примечание
Элемент child addressLike элемента действия может содержать одно из следующих значений:
Значение | Описание |
---|---|
forward | Адреса результатов элемента, как передовая сообщение, не указанное получателей. Это также сохраняет вложения в текущем элементе. |
reply | Адресирует полученную строку в качестве стандартного ответа, отправитель указывается в строке To , а в строках CC или BCC нет никого. |
replyAll | Адресирует полученную вещь, как сообщение для всех ответов, и все исходные получатели будут скопированы на полученную. |
replyToFolder | Адресирует в текущей папке результативный элемент, например сообщение о публикации. Это также очищает объект в результате элемента. |
ответ | Адресует в результате элемент в качестве ответа на голосование, при этом отправитель указан в строке To , и никто в строках CC или BCC . |
- Указать класс сообщения и форму для элемента, в результате чего
- Чтобы указать, как тело текущего элемента включено в итоговом элементе
- Указать, как Outlook при выполнении действия
- Чтобы указать значение префикса в объекте итогового элемента
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см.
в статье Поддержка Office VBA и обратная связь.E-mail из формы
E-mail из формыОтправка электронной почты из формы
Обработка данных форм более подробно рассмотрена в моей книге «Самоучитель JavaScript», 2003, издательство «Питер»Здесь рассматривается пример формы для отправки сообщения по электронной почте. Заметим, что при щелчке на кнопке типа submit (отправить) в этой форме в большинстве случаев вызывается установленная на компьютере пользователя программа почтового клиента. Если вы работаете в IE6, а почтовый клиент — Outlook Express, то вроде бы все хорошо. Чаще всего окна почтового клиента не миновать, но тогда нужно просто отправлять из него.
Внимание: если вы собираетесь копировать приведенные здесь скрипты, то обратите внимание на примечание в конце этой страницы.
Ниже приведен работающий пример формы, данные из которой можно отправить по эл. почте.
Можно сделать и так, чтобы адрес получателя был фиксированным.
Итак, для отправки данных формы атрибут ACTION должен иметь некоторое значение. В общем случае это — URL-адрес файла или CGI-программы, которая получает и обрабатывает отправленные данные. Например, ACTION = «http://www.myserver/cgi/ myprogram.pl». Если вы хотите отправлять данные формы по электронной почте, то значением ACTION является строка вида:
mailto:адрес_e-mail
Можно также указать тему (subject) сообщения:
mailto:адрес_e-mail?subject=тема_сообщения
Кроме атрибута ACTION в теге следует указать еще два атрибута: METHOD и ENCTYPE. Атрибут METHOD имеет значение POST или GET. Выбор значения отражается лишь на форме, в которой передаются данные. Если у вас нет особых причин задуматься об этом, выбирайте значение POST. Атрибуту ENCTYPE присвойте значение «text/plain». В этом случае отправляемое сообщение будет представлять собой последовательность пар вида имя_элемента=значение.
Отправка данных рассмотренной выше формы произойдет при щелчке на кнопке типа Submit, на которой в нашем примере выводится надпись «Отправить». Адрес получателя указан как значение атрибута ACTION в теге. Если перед отправкой данных формы требуется предварительно их проверить или еще что-нибудь сделать, то для этого необходим сценарий. В следующем примере проверяется, имеется ли символ «@» в поле ввода адреса электронной почты получателя, и не пусто ли поле ввода собственно сообщения. Если символа «@» в адресе нет или поле сообщения пусто, то отправка не производится. Сценарий обрабатывает событие onsubmit, возникающее при щелчке на кнопке типа Submit.
Кому:
От кого:
Сообщение:
Если отправить данные формы, показанной выше, то адресат получит сообщение в следующем виде:
[email protected] [email protected] Сообщение=Привет Отправить=Отправить
В приведенном выше примере мы делаем поверхностную проверку данных, введенных пользователем в форму. Если данные не удовлетворяют нашему критерию правильности, то мы должны предотвратить их отправку. Это можно сделать двумя способами. Первый способ заключается в присвоении свойству returnValue значения false (как в нашем примере). Тогда отменяется стандартная реакция на событие, в данном случае — реакция на событие onsubmit (отправка сообщения). Второй способ заключается в присвоении свойству action пустого значения. В нашем примере значение action пусто по умолчанию, поэтому выражение event.returnValue = false является излишним, но зато делает код сценария более понятным. В контексте нашего HTML-кода сценарий мог бы выглядеть и следующим образом:
На веб-страницах нередко размещают ссылку или кнопку, открывающую форму отправки сообщения по электронной почте автору страницы. В этом случае не нужно вводить почтовый адрес получателя. Очевидно, что этот адрес уже присвоен в качестве значения атрибуту ACTION в теге
. Если вы хотите затруднить его выявление отправителем сообщения или, что важнее, различными программами-роботами, сканирующими веб-страницы с целью выявления адресов электронной почты, то следует предпринять некоторые меры. Самый простой рецепт — хранить отдельные компоненты адреса в различных переменных и собирать их с помощью выражения конкатенации (склейки), которое присваивается свойству action. В результате программа-робот не найдет в HTML-документе строки символов, имеющей структуру адреса электронной почты. Ниже приводится пример HTML кода, воплощающий эту нехитрую идею.Примечание. В текстах приведенных здесь примеров в тэгах и после левого уголка установлен пробел, чтобы эти тэги не интерпретировались. Если вы копируете эти примеры, то перед их выполнением уберите пробелы в указанных местах.
Сайт автора
Иллюстрированный самоучитель по созданию сайтов › Веб-страницы, реагирующие на действия пользователя › Ввод данных пользователем в формы HTML [страница — 106] | Самоучители по работе в Internet
Тематика: Самоучители по работе в Internet
Одно из основных отличий новой версии HTML (4. 0) от предыдущих состоит в том, что теперь веб-страница может отслеживать действия пользователя и реагировать на них, изменяя свой вид. В этой главе мы рассмотрим несколько примеров такой реакции. Однако сначала давайте рассмотрим классический способ взаимодействия с пользователем, появившийся еще в предыдущих версиях языка.
Этот способ заключается в построении так называемых форм. Он состоит в том, что на веб-страницу выводится, к примеру, несколько текстовых полей, куда пользователь может ввести какой-либо текст, а потом с помощью специальной кнопки отправить его серверу. Вместо ввода текста пользователю может быть предложено выбрать несколько пунктов из заготовленного списка или отметить флажками нужные пункты и т. п. Такое взаимодействие с пользователем весьма условно – ведь информация, которую он ввел и отправил, все равно обрабатывается на стороне сервера.
Получение информации от пользователя
В качестве примера давайте рассмотрим страницу для отзывов клиентов об услугах гипотетической фирмы “Лентяй”. Это, конечно, будет не совсем то, что обычно подразумевается под книгой отзывов на сайте. Просто мы предоставим пользователю возможность ввести информацию и отправить ее на сервер (как уж она будет там обрабатываться, мы сейчас рассматривать не будем).
Итак, возьмем заголовок и правую часть веб-страницы. Только добавим ссылку на страницу “Услуги” и снимем ее с “Книги отзывов”:
<
DIV
CLASS
=
"rght"
>
<
DIV
CLASS
=
"lnk"
>
<
A
HREF
=
"main.html"
>
УСЛУГИ
<
/
A
>
<
/
DIV
>
<
DIV
CLASS
=
"lnk"
>
<
A
HREF
=
"prices. html"
>
ЦЕНЫ
<
/
A
>
<
/
DIV
>
<
DIV
CLASS
=
"lnk"
>
<
A
HREF
=
"forml.html"
>
Форма ЗАКАЗА
<
/
A
>
<
/
DIV
>
<
DIV
CLASS
=
"lnk"
>
<
A
HREF
=
"history. html"
>
История
<
SPAN
STYLE
=
"letter-spacing: -3px;"
>
КОМПАНИИ
<
/
SPAN
>
<
/
A
>
<
/
DIV
>
<
DIV
CLASS
=
"lnk"
>
Книга ОТЗЫВОВ
<
/
DIV
>
А в левую часть страницы давайте поместим форму. Для этого сначала добавим специальный тег <FORM>, без которого невозможно будет отправить данные на сервер обычными средствами. Здесь нам потребуется указать атрибут METHOD=, с помощью которого браузер определяет способ отправки данных: в виде “добавки” к строке URL (метод get) или в виде блока данных (метод post). В качестве значения атрибут ACTION= необходимо указать URL-адрес сервера, куда отправятся данные. Здесь можно также указать адрес электронной почты (с префиксом mailto:) – в этом случае данные формы отправятся по указанному адресу. В нашем случае давайте укажем гипотетический URL-адрес сервера cgi.lentyay.com, где обработка данных формы будет происходить с помощью какого-нибудь CGJ-сценария:
<
FORM
ACTION
=
"http://cgi.lentyay.corn/guest.cgi"
METHOD
=
"post"
>
В конце формы должен стоять закрывающий тег </FORM>. Все, что находится внутри, можно будет сообщить серверу. Для отправки данных формы традиционно используется кнопка с названием Submit (Отправить). Для ее создания можно использовать тег <INPUT> с атрибутом TYPE=»submit»:
<
INPUT
TYPE
=
"submit"
VALUE
=
"Отправить"
>
Атрибут VALUE= при этом определяет надпись на кнопке. Если его не задать, то на кнопке будет написано Submit. Какие же данные будут отправлены? Для начала давайте спросим у пользователя его имя, выделив для этого небольшое однострочное текстовое поле, и мнение об услугах фирмы, для чего выделим многострочное текстовое поле.
Поля для ввода текста
Чтобы создать однострочное текстовое поле, нужно также воспользоваться тегом <INPUT>, но уже с атрибутом TYPE=»text». При этом его ширина задается с помощью атрибута SIZE=. Чтобы программе обработки данных (или человеку, который будет в этих данных разбираться) было понятно, какие данные к какому полю относятся, желательно для каждого поля указать атрибут NAME=. В данном случае мы запрашиваем у пользователя его имя, поэтому пусть значением этого атрибута будет слово Имя (по-английски тоже Name):
<
INPUT
TYPE
=
"text"
NAME
=
"Name"
VALUE
=
"Аноним"
SIZE
=
"30"
>
При этом атрибут VALUE= определяет, что будет изначально написано в текстовом поле. Обратите внимание на то, что атрибут SIZE= определяет только видимую ширину текстового поля, но вовсе не ограничивает количество вводимых пользователем символов. Если же надо ввести такое ограничение, то следует пользоваться атрибутом MAXLENGTH=.
– Хорошо, – скажете вы, – но как пользователь узнает, что от него требуется ввести в это поле?
Чтобы дать ему “подсказку”, можно просто написать ее текст перед текстовым полем:
Ваше имя:
<
INPUT
TYPE
=
"text"
NAME
=
"Name"
VALUE
=
"Аноним"
SIZE
=
"30"
>
- « первая
- ‹ предыдущая
- …
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- …
- следующая ›
- последняя »
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.
— HTML: Язык гипертекстовой разметки
Элементы типа электронная почта
позволяют пользователю вводить и редактировать адрес электронной почты или, если указан атрибут , кратный
, список адресов электронной почты. адреса.
Введенное значение автоматически проверяется, чтобы убедиться, что оно либо пустое, либо адрес электронной почты в правильном формате (или список адресов), прежде чем форма может быть отправлена. : действительные
и :invalid
Псевдоклассы CSS автоматически применяются по мере необходимости для визуального обозначения того, является ли текущее значение поля действительным адресом электронной почты или нет.
В браузерах, которые не поддерживают ввод типа email
, ввод email
возвращается к стандартному текстовому вводу.
Атрибут value
элемента
содержит строку, которая автоматически проверяется на соответствие синтаксису электронной почты. В частности, есть три возможных формата значений, которые пройдут проверку:
- Пустая строка («»), указывающая, что пользователь не ввел значение или что значение было удалено.
- Один правильно сформированный адрес электронной почты. Это не обязательно означает, что адрес электронной почты существует, но, по крайней мере, он правильно отформатирован. Проще говоря, это означает
имя пользователя@домен
илиимя пользователя@домен.tld
. Конечно, это еще не все; см. Проверка регулярного выражения, соответствующего алгоритму проверки адреса электронной почты. - Если и только если указан атрибут
, кратный
, значение может быть списком правильно сформированных адресов электронной почты, разделенных запятыми. Все конечные и начальные пробелы удаляются из каждого адреса в списке.
Подробную информацию о том, как проверяются адреса электронной почты, чтобы убедиться, что они правильно отформатированы, см. в разделе Проверка.
В дополнение к атрибутам, действующим на все элементы
независимо от их типа, электронная почта 9Входы 0004 поддерживают следующие атрибуты.
list
Значения атрибута list — это id
элемента
, расположенного в том же документе.
предоставляет список предопределенных значений, которые можно предложить пользователю для этого ввода. Любые значения в списке, несовместимые с типом
, не включаются в предлагаемые варианты. Предоставленные значения являются рекомендациями, а не требованиями: пользователи могут выбрать из этого предопределенного списка или указать другое значение.
maxlength
Максимальное количество символов (в единицах кода UTF-16), которое пользователь может ввести во ввод электронной почты
. Это должно быть целочисленное значение от 0 или выше. Если maxlength
не указано или указано недопустимое значение, вход электронной почты
не имеет максимальной длины. Это значение также должно быть больше или равно значению minlength
.
Ввод не пройдет проверку ограничения, если длина текстового значения поля больше maxlength Длина
единиц кода UTF-16. Проверка ограничения применяется только тогда, когда значение изменяется пользователем.
minlength
Минимальное количество символов (в единицах кода UTF-16), которое пользователь может ввести во ввод электронной почты
. Это должно быть неотрицательное целое число, меньшее или равное значению, указанному параметром maxlength
. Если minlength
не указано или указано недопустимое значение, вход электронной почты
не имеет минимальной длины.
Ввод не пройдет проверку ограничения, если длина текста, введенного в поле, меньше minlength Длина
единиц кода UTF-16. Проверка ограничения применяется только тогда, когда значение изменяется пользователем.
множественный
Логический атрибут, который, если присутствует, указывает, что пользователь может ввести список из нескольких адресов электронной почты, разделенных запятыми и, необязательно, пробелами. См. Разрешение нескольких адресов электронной почты в качестве примера или HTML-атрибут: несколько для получения дополнительных сведений.
Примечание: Обычно, если вы указываете обязательный атрибут
, пользователь должен ввести действительный адрес электронной почты, чтобы поле считалось действительным. Однако, если вы добавите атрибут , составляющий несколько
, допустимым значением будет список нулевых адресов электронной почты (пустая строка или строка, полностью состоящая из пробелов). Другими словами, пользователю не нужно вводить даже один адрес электронной почты, когда указано , кратное
, независимо от значения , требуемого
.
шаблон
Атрибут шаблон
, если он указан, является регулярным выражением, которому входное значение
должно соответствовать, чтобы значение прошло проверку ограничения. Это должно быть допустимое регулярное выражение JavaScript, используемое типом RegExp
, и как описано в нашем руководстве по регулярным выражениям; флаг 'u'
указывается при компиляции регулярного выражения, чтобы шаблон обрабатывался как последовательность кодовых точек Unicode, а не как ASCII. Вокруг текста шаблона не должно указываться косая черта.
Если указанный шаблон не указан или недействителен, регулярное выражение не применяется и этот атрибут полностью игнорируется.
Примечание: Используйте атрибут title
, чтобы указать текст, который большинство браузеров будет отображать в качестве всплывающей подсказки, чтобы объяснить, какие требования должны соответствовать шаблону. Вы также должны включить другой пояснительный текст рядом.
Дополнительные сведения и пример см. в разделе Проверка шаблона.
заполнитель
Атрибут -заполнитель представляет собой строку, которая предоставляет пользователю краткую подсказку относительно того, какая информация ожидается в поле. Это должно быть слово или короткая фраза, демонстрирующая ожидаемый тип данных, а не поясняющее сообщение. Текст не должен включать возврат каретки или перевод строки.
Если содержимое элемента управления имеет одну направленность (LTR или RTL), но необходимо представить заполнитель в противоположном направлении, вы можете использовать символы форматирования двунаправленного алгоритма Unicode для переопределения направленности внутри заполнителя; Дополнительные сведения см. в разделе Как использовать элементы управления Unicode для двунаправленного текста.
Примечание: По возможности избегайте использования атрибута-заполнителя
. Это не так полезно с семантической точки зрения, как другие способы объяснения вашей формы, и может вызвать неожиданные технические проблемы с вашим контентом. Дополнительную информацию см. в разделе Метки и заполнители в : элемент ввода (ввод формы).
только для чтения
Логический атрибут, который, если присутствует, означает, что это поле не может быть отредактировано пользователем. Однако его значение
все еще может быть изменено кодом JavaScript, непосредственно устанавливающим HTMLInputElement
значение
свойство.
Примечание: Поскольку поле только для чтения не может иметь значения, обязательное
не влияет на входные данные с атрибутом только для чтения
.
size
Атрибут size
представляет собой числовое значение, указывающее, сколько символов должно быть в поле ввода. Значение должно быть числом больше нуля, а значение по умолчанию равно 20. Поскольку ширина символов различается, это может быть или не быть точным, и на это не следует полагаться; результирующий ввод может быть уже или шире, чем указанное количество символов, в зависимости от символов и шрифта ( 9Используемые настройки шрифта 0003 ).
Это означает, что , а не устанавливает ограничение на количество символов, которые пользователь может ввести в поле. Он лишь указывает приблизительно, сколько можно увидеть одновременно. Чтобы установить верхний предел длины входных данных, используйте атрибут maxlength
.
Адреса электронной почты являются одними из наиболее часто вводимых текстовых форм данных в Интернете; они используются при входе на веб-сайты, при запросе информации, для подтверждения заказа, для веб-почты и т. д. Таким образом, 9Тип ввода 0003 электронная почта может значительно облегчить вашу работу веб-разработчика, поскольку он может помочь упростить вашу работу при создании пользовательского интерфейса и логики для адресов электронной почты. Когда вы создаете ввод электронной почты с правильным значением type
, email
, вы получаете автоматическую проверку того, что введенный текст имеет по крайней мере правильную форму, чтобы потенциально быть законным адресом электронной почты. Это может помочь избежать случаев, когда пользователь неправильно набирает свой адрес или указывает неверный адрес.
Однако важно отметить, что этого недостаточно для того, чтобы гарантировать, что указанный текст является адресом электронной почты, который действительно существует, соответствует пользователю сайта или приемлем каким-либо иным образом. Это гарантирует, что значение поля правильно отформатировано, чтобы быть адресом электронной почты.
Примечание: Также важно помнить, что пользователь может изменять ваш HTML за кулисами, поэтому ваш сайт не должен использовать эту проверку в целях безопасности. Вы должен проверять адрес электронной почты на стороне сервера любой транзакции, в которой предоставленный текст может иметь какие-либо последствия для безопасности любого рода.
Простой ввод электронной почты
В настоящее время все браузеры, реализующие этот элемент, реализуют его как стандартное поле ввода текста с базовыми функциями проверки. Спецификация, однако, дает браузерам свободу действий в этом вопросе. Например, этот элемент можно интегрировать со встроенной адресной книгой устройства пользователя, чтобы можно было выбирать адреса электронной почты из этого списка. В своей самой простой форме электронная почта
ввод может быть реализован следующим образом:
Обратите внимание, что он считается действительным, если он пуст и если введен один правильно отформатированный адрес электронной почты, но в противном случае он не считается действительным. При добавлении обязательного атрибута
разрешены только правильно сформированные адреса электронной почты; ввод больше не считается действительным, когда он пуст.
Разрешение нескольких адресов электронной почты
Путем добавления логического атрибута Multiple
вход можно настроить на прием нескольких адресов электронной почты.
<тип ввода = "электронная почта" несколько />
Ввод теперь считается действительным, если введен один адрес электронной почты или любое количество адресов электронной почты, разделенных запятыми и, при необходимости, некоторое количество пробелов.
Примечание: Когда используется , кратное
, значение равно может быть пустым.
Некоторые примеры допустимых строк, когда указано , кратное
:
-
""
-
"я@пример"
-
"[email protected]"
-
"[email protected], [email protected]"
-
"[email protected], [email protected]"
-
"[email protected], [email protected], [email protected]"
Некоторые примеры недопустимых строк:
-
","
-
"я"
-
"me@example. org [email protected]"
Заполнители
Иногда полезно предложить контекстную подсказку о том, какую форму должны принимать входные данные. Это может быть особенно важно, если дизайн страницы не предлагает описательных меток для каждого
. Здесь на помощь приходят заполнители . Заполнитель — это значение, которое демонстрирует форму, которую должно принять значение
, путем представления примера допустимого значения, которое отображается в поле редактирования, когда значение элемента равно 9.0004 это "". После ввода данных в поле заполнитель исчезает; если поле пусто, местозаполнитель появляется снова.
Здесь у нас есть ввод электронной почты
с заполнителем [email protected]
. Обратите внимание, как заполнитель исчезает и появляется снова, когда вы манипулируете содержимым поля редактирования.
Управление размером ввода
Вы можете контролировать не только физическую длину поля ввода, но также минимальную и максимальную длину, разрешенную для самого вводимого текста.
Физический размер элемента ввода
Физическим размером поля ввода можно управлять с помощью атрибута размера
. С его помощью вы можете указать количество символов, которое поле ввода может отображать за раз. В этом примере поле редактирования электронной почты
имеет ширину 15 символов:
Длина значения элемента
Размер не зависит от ограничения длины самого введенного адреса электронной почты, поэтому вы можете разместить поля на небольшом пространстве, но при этом разрешить ввод более длинных строк адреса электронной почты. Вы можете указать минимальную длину в символах для введенного адреса электронной почты, используя атрибут minlength
; аналогичным образом используйте maxlength
, чтобы установить максимальную длину введенного адреса электронной почты.
В приведенном ниже примере создается поле ввода адреса электронной почты шириной 32 символа, требующее, чтобы содержимое было не короче 3 символов и не длиннее 64 символов.
Предоставление параметров по умолчанию
Предоставление одного значения по умолчанию с использованием атрибута значения
Как всегда, вы можете указать значение по умолчанию для поля ввода электронной почты
, установив его значение атрибута
:
Предлагаемые значения
Сделав еще один шаг, вы можете предоставить список параметров по умолчанию, из которых пользователь может выбирать, указав атрибут list
. Это не ограничивает пользователя этими параметрами, но позволяет ему быстрее выбирать часто используемые адреса электронной почты. Это также предлагает подсказки к автозаполнение
. Атрибут list
указывает идентификатор
, который, в свою очередь, содержит один элемент для каждого предлагаемого значения; каждая опция
значение
является соответствующим рекомендуемым значением для поля ввода электронной почты.
<список данных> список данных>
При наличии элемента
и его s браузер предложит указанные значения в качестве возможных значений для адреса электронной почты; обычно это представлено в виде всплывающего или раскрывающегося меню, содержащего предложения. Хотя конкретный пользовательский интерфейс может варьироваться от одного браузера к другому, обычно щелчок в поле редактирования представляет раскрывающийся список предлагаемых адресов электронной почты. Затем по мере ввода пользователем список фильтруется, чтобы отображались только совпадающие значения. Каждый введенный символ сужает список до тех пор, пока пользователь не сделает выбор или не введет пользовательское значение.
Существует два уровня проверки содержимого, доступных для сообщений электронной почты
. Во-первых, для всех
предлагается стандартный уровень проверки, который автоматически гарантирует, что содержимое соответствует требованиям, чтобы быть действительным адресом электронной почты. Но есть также возможность добавить дополнительную фильтрацию, чтобы обеспечить удовлетворение ваших собственных особых потребностей, если они у вас есть.
Предупреждение: Проверка HTML-формы — это , а не , заменяющая сценарии, гарантирующие, что введенные данные находятся в правильном формате. Кто-то слишком легко может внести коррективы в HTML, чтобы обойти проверку, или чтобы удалить его полностью. Также возможно, что кто-то полностью обойдет ваш HTML-код и отправит данные непосредственно на ваш сервер. Если ваш код на стороне сервера не может проверить данные, которые он получает, может произойти катастрофа, когда данные в неправильном формате (или данные, которые слишком велики, имеют неправильный тип и т. д.) введены в вашу базу данных. 9_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(? :\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/
Чтобы узнать больше о том, как работает проверка формы и как использовать свойства CSS :valid
и :invalid
для стилизации ввода в зависимости от того, является ли текущее значение допустимым, см. раздел Проверка данных формы.
Примечание: Существуют известные проблемы спецификации, связанные с международными доменными именами и проверкой адресов электронной почты в HTML. См. ошибку W3C 15489.для деталей.
Проверка шаблона
Если вам нужно, чтобы введенный адрес электронной почты был ограничен чем просто «любая строка, похожая на адрес электронной почты», вы можете использовать атрибут шаблона
, чтобы указать регулярное выражение, значение которого должно соответствие, чтобы оно было действительным. Если указан атрибут , кратный
, каждый отдельный элемент в списке значений, разделенных запятыми, должен соответствовать регулярному выражению.
Предположим, вы создаете страницу для сотрудников Best Startup Ever, Inc., которая позволит им обратиться за помощью в свой ИТ-отдел. В нашей упрощенной форме пользователю необходимо ввести свой адрес электронной почты и сообщение с описанием проблемы, с которой ему нужна помощь. Мы хотим убедиться, что пользователь не только предоставляет действительный адрес электронной почты, но и в целях безопасности мы требуем, чтобы адрес был внутренним корпоративным адресом электронной почты.
Поскольку входные данные типа электронная почта
проверяются как на стандартную проверку адреса электронной почты , так и на указанный шаблон
, вы можете легко реализовать это. Посмотрим как:
тело { шрифт: 16px без засечек; } .почтовый ящик { нижний отступ: 20px; } .окно сообщения { нижний отступ: 20px; } этикетка { высота строки: 22px; } метка :: после { содержание: ":"; }
<форма> <дел>
<ввод тип = "электронная почта" размер = "64" максимальная длина = "64" требуется заполнитель = "имя пользователя@beststartupever. com" шаблон=".+@beststartupever\.com" title="Пожалуйста, указывайте только лучший корпоративный адрес электронной почты для стартапов" />