Какова точка атрибута name
в HTML-форме? Насколько я могу судить, вы не можете прочитать имя формы при подаче или сделать с ней что-нибудь еще. Он служит цели?
Какая точка HTML образует атрибут name?
Ответ 1
Короче говоря, и, возможно, упрощение бит: оно используется вместо id
для браузеров, которые не понимают document.getElementById
.
В наши дни это не имеет реальной цели. Это наследие с первых дней войн браузера перед использованием name
, чтобы описать, как отправлять контрольные значения при отправке формы, и id
идентифицировать элемент внутри страницы.
Ответ 2
Из спецификация:
Атрибут
name
представляет имяform
в коллекцииforms
.
Ответ 3
Как только вы назначаете имя элементу, вы можете ссылаться на этот элемент через document.name_of_element
на весь ваш код. Не работает слишком много, если у вас есть несколько полей с тем же именем, но это позволяет использовать ярлыки, например:
<form name="myform" ...>
document.myform.submit();
вместо
document.getElementsByName('myform')[0].submit();
Ответ 4
Вы можете использовать атрибут name как атрибут "дополнительная информация" - подобно тому, как со скрытым вводом - но это сохраняет дополнительную информацию, связанную с формой, что упрощает чтение и доступ.
Ответ 5
Здесь MDN должен сказать об этом:
name
Название формы. В HTML 4 его использование устарело (вместо этого следует использоватьid
). Он должен быть уникальным среди форм в документе, а не только пустой строкой в HTML 5.
(из https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form#attr-name)
Мне кажется, что это немного запутанно, что указывает, что это должна быть уникальная, непустая строка в HTML 5, когда она была устаревшей в HTML 4. (я бы предположил, что это требование применяется только в том случае, если атрибут name
указан вообще?). Но я думаю, что можно с уверенностью сказать, что любая его цель была заменена атрибутом id
.