Отправляется ли форма, если у тега нет атрибута name (а дочерние элементы в форме имеют атрибут name?

#html

#HTML

Вопрос:

Если я не указываю атрибут name в теге, все ли в форме отправлено успешно?

Я знаю, что without name не отправляется ни в GET, ни в POST

Комментарии:

1. Да, все значения элементов управления формы с [name] отправляются за одним исключением: <output> . Если вы хотите отправить значение <output> просто скопируйте его в <input type='hidden'> . Кроме того, если у вас есть группа переключателей, которые имеют одинаковое [name] значение, отправляется только значение выбранного переключателя.

2. проверь по ответу, братан, я тебе обязательно помогу.

Ответ №1:

Отправка <form>

«Отправляется ли форма, если у тега нет атрибута name (а дочерние элементы в форме имеют атрибут name?»

  • Да, все значения элементов управления формы1 с [name] и вложенные в тег <form> 2 отправляются с одним исключением: <output> . Если вы хотите отправить значение <output> просто скопируйте его в <input type='hidden'> .
  • Формам не требуется [name] атрибут для отправки значений своих дочерних тегов или для себя (поскольку формы фактически не имеют атрибутов value).
  • Если у вас есть группа переключателей, которые имеют одинаковый [name] — отправляется только значение выбранного переключателя.
  • У <button> тега есть поведение по умолчанию, когда он вложен в форму, он будет действовать как <input type="submit"> . Поэтому не забудьте добавить type="button" к <button> элементам, которые являются просто кнопками для запуска события click вместо события submit.
  • Если в форме установлен фокус и нажата клавиша enter (return для компьютеров Mac), также запускается событие отправки.

1Дочерние теги <form> тега, которые имеют [name] значение /, отправленное во время отправки, известны как успешные элементы управления.
2Если элемент управления формы не является дочерним элементом формы, связь может быть включена путем назначения элемента управления form="FORMID"


ДЕМОНСТРАЦИЯ

<form>

  • [action] : Отправляет на тестовый сервер в режиме реального времени
  • [target] : [name] iframe, который отображает ответ сервера
  • [onchange] : Всякий раз, когда пользователь оставляет данные в форме — <output> отображает значение выбранного переключателя и <output> присваивает значение также скрытому вводу.

 #ui {
  width: 300px;
}

#out,
button,
[type=submit] {
  float: right;
}  
 <form id='main' action='https://httpbin.org/post' method='post' target='response' onchange='out.value = rad.value; inv.value = out.value; return false'>
  <fieldset id='ui'>
    <legend>Submitting a Form</legend>
    <fieldset>
      <input id='xA' name='rad' type='radio' value='A'> A
      <input id='xB' name='rad' type='radio' value='B'> B
      <input id='xC' name='rad' type='radio' value='C'> C
      <input id='xD' name='rad' type='radio' value='D'> D
      <output id='out' name='out' for='xA xB xC xD inv'></output>
      <input id='inv' name='inv' type='hidden'>
    </fieldset>
    <button>amp;<buttonamp;></button>
    <input type='submit'>
  </fieldset>
</form>
<iframe name='response'></iframe>  

Ответ №2:

да, форма будет отправлена, даже если у нее нет имени. проверьте приведенный ниже код, он вам все объяснит.

Нажмите на кнопку отправки, форма отправится, даже если у нее нет имени, действия и т.д. Кнопки отправки достаточно, чтобы отправить форму.

Если вы не упоминаете meathod, то тип отправки по умолчанию — «Get» meathod

 <form action='/cloud' meathod="get">
<input type ="submit" value="submit"/>
</form>  

Ответ №3:

Да!

К вашему СВЕДЕНИЮ — использование атрибутов name в формах не рекомендуется для id в HTML5. Смотрите примечание MDN об этом.

Имя формы. В HTML 4 его использование устарело (вместо него следует использовать id). Он должен быть уникальным среди форм в документе, а не просто пустой строкой в HTML 5.

Правки:

  1. исправлена опечатка из предыдущего поста на мобильном устройстве, из-за которой казалось, что я предполагал, что <input> атрибуты name устарели.
  2. Добавлена цитата из MDN

Комментарии:

1. MDN неверен или, по крайней мере, вводит в заблуждение. Атрибут name в элементах формы не является устаревшим ни в HTML 4, ни в HTML 5. Это правда, что спецификация HTML 4 поощряет использование id вместо этого, но формально не осуждает атрибут. HTML 5 даже этого не делает. Определение атрибута name в элементе формы в HTML 4 . Определение атрибута name в элементе формы в HTML 5

Ответ №4:

да, у вас есть метод give form, подобный:

 <form method="post OR get">
</form>
  

а также укажите имя элемента, потому что имя элемента используется для публикации значения этого элемента.