12

Теги для создания форм. Часть №2. <input>

Теги для создания форм. Часть №2. &lt;input&gt;

<input> - тег который мы вкладываем внутрь тега <form>, с помощью него мы будем создавать интерактивные поля для ввода информации пользователем.


Тег <input> можно использовать и вне тега <form>.



Также имеет много атрибутов позволяющих настроить его внешний вид, поведение и работу.


<input type="text">
<input type="number">
<input type="email">
<input type="tel">
<input type="checkbox">
<input type="radio">
<input type="button" value="Submit">
<input type="submit" value="Submit">
<input type="color">
<input type="date">
<input type="time">
<input type="file">
<input type="hidden">
<input type="password">
<input type="range">
<input type="url">


Это основные типы тега <input>, в зависимости от типа тега он может принимать какие-то атрибуты или не принимать их, об этом лучше читать в документации.

Рассмотрим несколько атрибутов на примере стандартного input для ввода текста.

<input type="text" value="Some text here">

value - позволяет нам определить или предопределить значение тега input.

<input type="text" placeholder="First name">

placeholder - определяет текст, который будет показа пользователь внутри input до того момента пока пользователь не начнет вводить свое значение. Доступен не всем типам input.

<input type="text" required>

required - определяет, будет ли обязательным этот input в рамках текущего тега <form>.

<input type="text" disabled>

disabled - определяет, будет ли у пользователя возможность редактировать содержимое input

<input type="text" pattern="">

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

<input type="text" name="first_name">

name - задает имя для нашего input

<form id="form_id"></form>
<input type="text" form="form_id">
Атрибут form - позволяет связать input с тегом <form>, input лежит вне тега <form>.

Атрибутов <input> существует огромное количество, мы рассмотрели только самые распространенные.



Label - <label>


Это тег позволяющий указывать подпись для элемента, обычно используется вместе с тегом input. input и label можно связать с помощью id для input и for для label.


<form action="">
<h2>Contact form #1</h2>
<div>
<label for="first_name">First name:</label>
<input id="first_name" type="text" placeholder="First name">
</div>
</form>

Также мы можем положить внутрь <label> тег <input> в таком случае они свяжутся автоматически и нам не нужно указывать атрибуты for и id.


<form action="">
<h2>Contact form #2</h2>
<div>
<label>
<span>First name</span>
<input type="text" placeholder="First name">
</label>
</div>
</form>

Пример


<form action="">
<h2>Contact form #3</h2>
<div>
<label for="user_name">First name:</label>
<input id="user_name" type="text" placeholder="User name">
</div>
<div>
<label>
<span>User surname:</span>
<input type="text" placeholder="User surname">
</label>
</div>
<div>
<input type="submit" value="Submit">
<input type="reset" value="Reset from">
</div>
</form>

P.S. Больше уроков у меня на канале.


P.P.S Для тех кто хочет посмотреть код - ссылка на git репозиторий

Web-технологии

535 постов5.8K подписчиков

Правила сообщества

1. Не оскорблять других пользователей

2. Не пытаться продвигать свои услуги под видом тематических постов

3. Не заниматься рекламой

4. Никакой табличной верстки

5. Тег сообщества(не обязателен) pikaweb

Вы смотрите срез комментариев. Показать все
0
DELETED
Автор поста оценил этот комментарий

А можете привести пример кода, как начинать поиск в гугле, не заходя на сам сайт гугла?

Если такую форму сделать, то это за всю жизнь можно сэкономить бесконечное количество интернета, а времени ещё больше!!!

раскрыть ветку (10)
раскрыть ветку (9)
0
DELETED
Автор поста оценил этот комментарий

Огромное спасибо! Работает!!! Я пол жизни об этом мечтал!!!!


Только можно как-то поиск на обычную, настоящую кнопку повесить, которую я могу видеть в редакторе? Чтоб убрать весь мусор с экрана в режиме редактирования (штрих-пунктируную линию, и жёлтые квадратики  - коды которые редактор не показывает.


На скриншотах ваш пример кода моей странице в редакторе (он не умеет нормально показывать кодировку UTF-8), а ниже настоящая кнопка - вот можно как-то связать "input" и настоящую "кнопку"?

Иллюстрация к комментарию
Иллюстрация к комментарию
раскрыть ветку (8)
0
Автор поста оценил этот комментарий

Если честно, я не понял вопрос (

раскрыть ветку (7)
0
DELETED
Автор поста оценил этот комментарий

Ну вот я стёр, всё, что относится к вашему примеру, и оставил только настоящий "input" и настящую "кнопку".


В Borland Delphi я бы мог написать примерно такой код (понятно, что там интернетных функций нету, а я взял ваше название):


onButtonClick:= Аction ('https://www.google.com/search' + Input.text);


А тут такое можно впихнуть просто в кнопку? (без всяких onButtonClick)

Иллюстрация к комментарию
Иллюстрация к комментарию
раскрыть ветку (6)
0
Автор поста оценил этот комментарий

Если я вас правильно понял, вам нужно обернуть инпуты в тег form и убрать скрипт onButtonClick браузер сам будет слать запрос и обрабатывать форму

раскрыть ветку (5)
0
DELETED
Автор поста оценил этот комментарий

Я не совсем понимаю вас.


Я привык к самому простому, и понятному HTML редактору из Win98. В нём меня всё устраивает. Особенно полезная функция - что он все новомодные скрипты, стили и прочий мусор показывает в виде жёлтых квадратиков - их очень удобно удалять из-за этого! С целью сохранять тексты с картинками в своей коллекции с минимально-занимаемым объёмом (картинки я тоже пережимаю).


Пробовал пару раз новые редакторы. Но они оказалось, что НЕ для визуального редактирования ТЕКСТА, а именно что для всяких скриптов и стилей заточены!!! Т.е. с задачей выкидывать мусор из HTML - не справляются.


Теперь вернёмся к вашему примеру (ещё раз спасибо за него). В том виде, как вы его написал - он работает (как я понимаю, работает потому что и поле ввода текста и НЕВИДИМАЯ при редактировании кнопка относятся к одному и тому же объекту. Я не против такого, не знал, что такое вообще бывает.


Но для написания более-менее серьёзной искалки такой вариант не годится!

Хотелось бы иметь несколько РАЗНЫХ полей ввода и/или РАЗНЫХ кнопок, чтобы текст можно было написать один раз типа "USB pinout", а потом чтоб можно было нажать кнопку с разными опциями "просто искать", "искать картинки", "искать только на site:com".

А в вашем примере такое НЕВОЗМОЖНО. Потому что нету операции

Кнопка1.Текст:=Input1.Teкст; или ещё лучше

Кнопка1.Текст:=Input1.Teкст + Input2.Teкст; только потом должна быть операция "Кнопка нажата".

Вот это вот выделенное жирным мне нужно!

раскрыть ветку (4)
0
Автор поста оценил этот комментарий
как я понимаю, работает потому что и поле ввода текста и НЕВИДИМАЯ при редактировании кнопка относятся к одному и тому же объекту.

Какая именно невидимая кнопка?

Хотелось бы иметь несколько РАЗНЫХ полей ввода и/или РАЗНЫХ кнопок, чтобы текст можно было написать один раз типа "USB pinout", а потом чтоб можно было нажать кнопку с разными опциями "просто искать", "искать картинки", "искать только на site:com".
В таком случае вам для того чтобы были разные поля для ввода с разными кнопками, необходимо создавать еще формы с полями и кнопками, в дополнение к этой. Для того чтобы искать по определенному сайту, нужно изменить url поиска, это атрибут action в теге form.


Я привык к самому простому, и понятному HTML редактору из Win98. В нём меня всё устраивает. Особенно полезная функция - что он все новомодные скрипты, стили и прочий мусор показывает в виде жёлтых квадратиков - их очень удобно удалять из-за этого! С целью сохранять тексты с картинками в своей коллекции с минимально-занимаемым объёмом (картинки я тоже пережимаю).
Я думаю это можно упростить, просто скачивайте себе сайт, и отрубайте от него все CSS и JS файлы, картинки на сайтах обычно и так минифицированы.

раскрыть ветку (3)
0
DELETED
Автор поста оценил этот комментарий

Мне нужно складывать заранее заготовленные строки вместе, и с результирующей строкой открывать сайт.


Ладно, не надо больше отвечать, я устал повторять одно и тоже 10 разными способами.

Иллюстрация к комментарию
раскрыть ветку (2)
0
Автор поста оценил этот комментарий

Хз может ваш редактор не понимает те button или input[submit] возможно стоит реально перейти на редактор поновее, и с того что я понял какие у вас требования к редактору, практически у всех редаторов есть похожий функционал, только интерфейс другой.

0
Автор поста оценил этот комментарий

Так уже лучше, тогда вам нужно писать скрипт для этих целей.

P.S. От себя скажу и без обид, старайтесь понятнее выражать свои мысли, тогда и понять вас будет проще, без обид )

Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества