Элемент html-формы <input>, его основные типы и атрибуты. Примеры отображения некоторых типов элемента <input> на веб-странице и взаимодействие с ними.
Элемент формы <input>
<input> — это элемент управления html-формы, который отображает объект (поле ввода), указанный в атрибуте type.
Элемент формы <input> можно рассматривать как коллекцию дочерних элементов управления (полей ввода) различных типов, предназначенных для ввода данных на веб-странице.
Синтаксис указания типа возвращаемого объекта для элемента <input>:
<input type=»type»>
Типы элемента <input>
Все типы элемента <input>, предназначенные для использования в html:
Тип элемента <input>
Возвращаемый объект
button
командная кнопка, запускающая какой-либо сценарий
checkbox
флажок, позволяющий выбрать несколько вариантов из предложенных, в том числе ноль вариантов
color
поле с палитрой, позволяющей выбрать цвет
date
поле со средством выбора даты (календарем)
datetime-local
поле со средством выбора даты и времени
email
поле для ввода email, который может автоматически проверяться при отправке
file
кнопка, открывающая диалог выбора файла, и поле для отображения выбранного файла
hidden
скрытое поле для служебной информации, которое не отображается на веб-странице
image
кнопка для отправки данных формы на обработку в виде изображения
month
поле со средством выбора месяца и года
number
поле со счетчиком для выбора чисел
password
поле для ввода пароля с маскировкой символов звездочками или кружками
radio
переключатель, позволяющий выбрать только один вариант из нескольких
range
элемент управления для ввода числа в виде отрезка с ползунком
reset
кнопка сброса, возвращающая все значения элементов формы к значениям по умолчанию
search
поле поиска — обычное текстовое поле, но с кнопкой очистки содержимого
submit
кнопка для отправки данных формы на обработку
tel
поле для номера телефона, которому можно задать шаблон для проверки введенного значения
text
однострочное текстовое поле (тип элемента <input> по умолчанию)
time
поле со средством выбора времени
url
поле для ввода URL-адреса, которое, в зависимости от поддержки браузера, может автоматически проверяться при отправке
week
поле со средством выбора недели и года
Стоит отметить, что отдельные из перечисленных выше типов элемента <input>, поддерживаются не всеми браузерами.
Несмотря на то, что скрытое поле hidden не отображается на веб-странице, оно доступно и может быть отредактировано с помощью инструментов разработчика любого браузера или функции «Просмотр исходного кода».
Атрибуты элементов управления
Основные атрибуты элемента <input> и других элементов управления, предназначенные для использования в html:
Атрибут
Описание
autofocus
указывает, что поле ввода должно автоматически получать фокус при загрузке веб-страницы
checked
указывает, что поле ввода должно быть выбрано при загрузке веб-страницы (для type="checkbox" и type="radio" )
disabled
отключает поле ввода
max
максимальное значение для поля ввода
maxlength
максимальное количество символов для поля ввода
min
минимальное значение для поля ввода
multiple
разрешает вводить в поле ввода более одного значения (для type="email" и type="file" )
pattern
регулярное выражение для проверки введенного значения в поле ввода
placeholder
подсказка, описывающая ожидаемое значение поля ввода
readonly
указывает, что поле ввода доступно только для чтения
required
указывает, что поле ввода является обязательным для заполнения
size
ширина поля ввода в символах
step
определяет шаг (интервал чисел) для числовых полей ввода
value
значение по умолчанию для поля ввода
Для элемента type="image" есть атрибуты height и width, которые задают высоту и ширину изображения.
Примеры
Для проведения тестов с элементами управления формы, используйте файл test.html.
Пример 1
Выбор цвета с помощью элемента ввода <input type="color">, определение числового значения выбранного цвета и запись его в элементы формы <output> и <input>:
1
2
3
4
5
6
<form>
<p>Нажмите и выберите цвет: <input type=»color» name=»coior1″></p>
<p>Вывод значения цвета в элемент output: <output name=»out1″>0</output></p>
<p>Вывод значения цвета в элемент input: <input name=»inp1″ size=»6″ value=»0″></p>
<button type=»button»>Вывести значение цвета</button>
</form>
Результат:
Нажмите и выберите цвет:
Вывод значения цвета в элемент output: 0
Вывод значения цвета в элемент input:
Пример 2
Автоматический вывод значения элемента управления <input type="range"> в элемент формы <input>:
Все опции одного переключателя должны иметь одно имя, так как переключатели с разными именами могут быть выбраны все одновременно и будут работать как флажки.
С помощью атрибута checked значением блока переключателей по умолчанию выбрана опция со словом «Лунка».
Поле для ввода текста | HTML
Основной элемент форм в HTML — поле для ввода. Оно реализуется с помощью тега <input> и позволяет задать различные поля для ввода данных: текст, пароли, чекбоксы, радио кнопки, кнопки отправки, загрузка файла, ввод даты и так далее.
Начиная со стандарта HTML5 список полей пополнился множеством новых вариантов. Базовыми типами инпутов являются:
Текст
Пароли
Чекбоксы
Радио кнопки
Самый простой способ использования <input> — создание текстового поля для ввода. Именно <input>
присутствует во всех полях поиска. Чтобы создать простое текстовое поле для ввода данных, необходимо внутрь формы добавить непарный тег <input> и указать у него атрибут type со значением text:
<form>
<input type="text">
</form>
Тег label
Поле создано, но совершенно непонятно что там вводить: имя? фамилию? код от сейфа? Чтобы указать назначение поля, используется тег <label>. Это парный тег, который напоминает параграф, но относится именно к описанию поля формы.
На самом деле недостаточно просто указать label, нужно его связать с полем формы. Это необходимо для однозначной связи, ведь полей может быть много.
Для связи label
используется один из двух вариантов:
Связь по атрибуту id. Для этого у тега <input> указывается атрибут id с произвольным именем, а у <label> добавляется атрибут for с таким же именем, как и значение id у элемента input
Связь через вложенность. Вы обратили внимание, что <label> — это парный тег? Для связи можно вложить input внутрь label, тогда они автоматически свяжутся друг с другом
<form>
<label>Введите имя
<input type="text">
</label>
</form>
Атрибут placeholder
Встречаются ситуации, когда для поля есть описание, но совершенно непонятно, в каком формате нужно заполнить данные.
Например, вначале указать имя, а потом фамилию, или наоборот? Чтобы помочь пользователю используется атрибут placeholder у тега <input>. Значение этого атрибута будет выведено внутри текстового поля.
<form>
<label for="name">Введите имя и фамилию</label>
<input type="text" placeholder="Иван Иванов">
</form>
Введите имя и фамилию
Другие текстовые поля
Замечали, что при вводе паролей, браузер автоматически проставляет звёздочки вместо показа символов? Этого можно добиться указав значение password для атрибута type:
В стандарте HTML5 появилось ещё несколько интересных типов для тега <input>, которые реализуют обычное текстовое поле, но имеют свою реализацию. Например:
email
number
search
tel
url
Их назначение в том, что значения автоматически проверяются браузером на корректность. Например, если ввести значение email, то браузер будет ожидать корректный шаблон для Email адреса. В противном случае он сам укажет, что значение неверное при попытке отправить форму.
Мобильные устройства так же не обходят стороной эти поля. В современных версиях мобильных операционных систем клавиатура подстраивается под тип поля, которое заполняется. Если выставлен тип email, то на клавиатуру сразу будет добавлен символ @, чтобы его не приходилось искать в дополнительных символах
Задание
Создайте форму, у которой файл с обработчиком данных лежит по адресу /people. Внутри формы создайте 2 текстовых поля
Упражнение не проходит проверку — что делать? 😶
Если вы зашли в тупик, то самое время задать вопрос в «Обсуждениях». Как правильно задать вопрос:
Обязательно приложите вывод тестов, без него практически невозможно понять что не так, даже если вы покажете свой код. Программисты плохо исполняют код в голове, но по полученной ошибке почти всегда понятно, куда смотреть.
В моей среде код работает, а здесь нет 🤨
Тесты устроены таким образом, что они проверяют решение разными способами и на разных данных. Часто решение работает с одними входными данными, но не работает с другими. Чтобы разобраться с этим моментом, изучите вкладку «Тесты» и внимательно посмотрите на вывод ошибок, в котором есть подсказки.
Мой код отличается от решения учителя 🤔
Это нормально 🙆, в программировании одну задачу можно выполнить множеством способов. Если ваш код прошел проверку, то он соответствует условиям задачи.
В редких случаях бывает, что решение подогнано под тесты, но это видно сразу.
Прочитал урок — ничего не понятно 🙄
Создавать обучающие материалы, понятные для всех без исключения, довольно сложно. Мы очень стараемся, но всегда есть что улучшать. Если вы встретили материал, который вам непонятен, опишите проблему в «Обсуждениях». Идеально, если вы сформулируете непонятные моменты в виде вопросов. Обычно нам нужно несколько дней для внесения правок.
Кстати, вы тоже можете участвовать в улучшении курсов: внизу есть ссылка на исходный код уроков, который можно править прямо из браузера.
Нашли ошибку? Есть что добавить? Пулреквесты приветствуются https://github.com/hexlet-basics
форм | HTML Dog
Формы используются для сбора данных, вводимых пользователем. Их можно использовать, например, в качестве интерфейса для веб-приложения или для отправки данных через Интернет.
Сами по себе формы обычно не особенно полезны. Они, как правило, используются вместе с языком программирования для обработки информации, вводимой пользователем. Эти сценарии принимают всевозможные обличья, которые в значительной степени выходят за рамки компетенции этого веб-сайта, поскольку для них требуются языки, отличные от HTML и CSS.
Основные теги, используемые в HTML формах: form , input , textarea , select и option .
форма
форма определяет форму и внутри этого тега, если вы используете форму для отправки пользователем информации (что мы предполагаем на этом уровне), атрибут action необходим, чтобы сообщить форме, где будет ее содержимое. отправлено в.
Атрибут method сообщает форме, как данные в нем будут отправлены, и может иметь значение получить , что по умолчанию, и зафиксировать информацию формы на веб-адресе, или отправить , который (по существу) невидимо отправляет информацию формы.
get используется для более коротких фрагментов неконфиденциальной информации — например, вы можете увидеть информацию, которую вы отправили в поиске на веб-сайте, в веб-адресе его страницы результатов поиска. post используется для более длинных и безопасных сообщений, например, в контактных формах.