Атрибут name
действителен только для <form>
и элементов формы (<input>
, <textarea>
и <select>
). Он используется для указания name
для связи с парой имя / значение, которая отправляется в форме сообщения.
Например:
<input type="checkbox" name="foo" value="1" />
если отмечен, отправит foo=1
. В DOM вы можете ссылаться на элементы формы из коллекции form.elements
, указав name
в качестве индекса. Если name
не является уникальным, коллекция возвращает массив элементов, а не элемент. Современная поддержка DOM ищет элементы формы по имени:
document.getElementsByName(nameValue)
примечание: он всегда возвращает массив, даже если найден только один элемент.
id
атрибут из мира XML и является уникальным идентификатором для любого узла, а не только для элементов формы. В отличие от атрибута name
он действителен для любого узла HTML. Также как атрибут name
, он должен соответствовать действующим правилам идентификатора. Идентификатор должен начинаться с альфы и содержать только альфа ([a-zA-Z]
), числа, дефисы, подчеркивания и двоеточия (обратите внимание, ASP.NET нарушает это правило, начиная зарезервированные идентификаторы с подчеркиванием - таким образом, они всегда будут не работать с HTML / XML lint - фактически некоторые прокси лишают их). Чтобы найти любой элемент HTML по id
, вы используете:
document.getElementById(idvalue)
это возвращает только один узел DOM.