Все ли браузеры игнорируют безымянные поля ввода?
Гарантируется ли, что браузер не отправляет элемент ввода, если у него не указан атрибут name?
Например, можем ли мы предположить, что при размещении формы ниже не будет отправлен номер кредитной карты?
<form action="/process" method="post">
<input id="credit-card-number" type="text">
<input type="submit" name="commit" value="Go">
</form>
2 ответа
Решение
Гарантируется ли, что браузер не отправляет элемент ввода, если у него не указан атрибут name?
Да (если только вы не пытаетесь изменить это с помощью JavaScript).
Спецификация совершенно ясна, что элементы управления без имен не могут быть успешными.
Успешный элемент управления должен быть определен в элементе FORM и должен иметь имя элемента управления.
Стандарт гласит, что для отправки ввода это должен быть успешный "контроль".
Если элемент управления не имеет name
это не удачный "контроль", поэтому его не следует отправлять.