Checkbox input type value: — HTML: HyperText Markup Language

Как получить значение флажка при отправке формы

  • Домашняя страница
  • Флажки

значение checkboxhtmlhtml5checkbox

Предположим, у вас есть флажок в HTML-форме, подобный этому:

 <форма>
Адрес электронной почты:

 Подпишитесь на рассылку

 

Если пользователь отметит эту опцию, вы получите следующие данные формы

электронная почта=имя@домен.com
opt_in_newsletter = вкл.
 

Однако, если пользователь не отметит эту опцию, само поле opt_in_newsletter не будет присутствовать в данных формы, которые вы получаете на стороне сервера.

электронная почта=имя@домен.com
 

Вы могли ожидать, что opt_in_newsletter=off Но на самом деле поведение отличается, кстати, рекомендация W3c поддерживает такое поведение.

Вы можете проверить это поведение в форме ниже. Код ниже использует сервис show.dockform.com для отображения значений, полученных на стороне сервера. (обратите внимание, что поле действия формы установлено как show.dockform.com ) Если вы не установите флажок, в данных, полученных на стороне сервера, не будет никакого значения, соответствующего флажку.

См. перо

Решения

Одним из решений является проверка наличия значения на стороне сервера.

Другим вариантом является обновление данных формы перед отправкой на сервер с помощью Javascript.

Обходной путь с использованием скрытых полей

Если вам нужно определенное значение для каждого входа на стороне сервера, используйте скрытые поля вместе с флажком. Оба поля должны иметь одинаковое имя.

Вот пример:

Вот соответствующий код для лучшего понимания:

 <дел>
  

Если пользователь выберет эту опцию, данные формы будут содержать: send_newsletter=yes
иначе данные формы будут содержать send_newsletter=no

См.

также
  • Как создать поле ввода телефона в HTML5
  • Как использовать электронную почту типа ввода Html5
  • Проверка флажка с использованием JavaScript
  • Проверка флажка с помощью jQuery
  • Флажки в пользовательском стиле с Bootstrap
  • Флажок формы HTML с обязательной проверкой
  • HTML-форма с примерами флажков и пример кода
  • Как создать раскрывающийся список с параметрами флажка с помощью Bootstrap Style
  • Как создать флажок в стиле Bootstrap?
  • Как выполнить проверку нескольких флажков в Javascript

Категории

  • Контактные формы
  • Снаски кодов
  • HTML Forms
  • Лучшие практики
  • HTML5 Forms
  • Виджеты формы
  • ПРИМЕНЕНИЯ ПРИМЕНЕНИЯ
  • Обработка формы
  • Form
  • Mail
  • Weber
  • Флажки
  • Загрузка файла
  • Действие формы
  • Формы Google

Что означает атрибут value для флажков в HTML?

спросил

Изменено 2 года, 5 месяцев назад

Просмотрено 45 тысяч раз

Предположим, этот фрагмент флажка:

 Стоит?
 

Есть ли причина статически определять атрибут value флажков в HTML? Что это значит?

2

Надеюсь, я правильно понял ваш вопрос.

Атрибут value определяет значение, которое отправляется запросом POST (т. е. у вас есть HTML-форма, отправленная на сервер). Теперь сервер получает имя (если определено) и значение.

 <метод формы="сообщение" действие="urlofserver">
    Стоит ли?

 

Сервер получит mycheckbox со значением 1 .

в PHP эта переменная POST хранится в массиве как $_POST['mycheckbox'] , который содержит 1 .

3

Я просто хотел прокомментировать комментарий Адриано Сильвы. Чтобы заставить то, что он описывает, работать, вы должны добавить «[]» в конце атрибута имени, поэтому, если мы возьмем его пример, правильный синтаксис должен быть:

 Ford
GM
Фольксваген
 

Затем вы используете что-то вроде: $test = $_POST[‘BrandID’]; (Не нужно [] после BrandID в php-коде). Что даст вам массив значений, значения в массиве — это флажки, отмеченные значениями.

Надеюсь, это поможет! 🙂

2

Одна из причин — использовать простоту работы со значениями в системе.

 Ford
GM
Фольксваген
 

6

При отправке формы данные в значение Атрибут используется как значение ввода формы, если флажок установлен. Значение по умолчанию — «включено».

 $('форма').on('изменение', обновление).trigger('изменение')

обновление функции () {
  переменная форма = $(это)
  form.find('вывод').text('→ ' + form.serialize())
} 
  <форма>
  
  <выход>


<форма>
  
  <выход>


<форма>
  
  <выход>


<форма>
  
  <выход>
 

3

Для краткого ответа от MDN

при отправке формы на сервер отправляются только те флажки, которые в данный момент отмечены, а сообщаемое значение является значением атрибута value

Это может сбивать с толку, потому что вы видите что-то вроде может привести к мысли, что 1 означает истину, и это будет рассматриваться как проверенное, что неверно.