Почему не ищется элемент по getElementsByName?

<input id="1test" name="test">

FIO = document.getElementsByName ("test")
FIO.value = 'Получилось'


1. Почему не ищется это поле через byName. Тоже самое через byId ("1test") работает.

2. На самом деле ищу по имени потому что при каждой загрузке странице ID нужных полей меняется. Можно как то накладывать маску вызова в getElement? Что то типо такого
getElementById (/\s/g + "test")
Не уверен что правильно использую классы. Недавно изучаю JS только :)
  • Вопрос задан
  • 234 просмотра
Решения вопроса 1
trushka
@trushka
надо document.getElementsByName('test')[0] использовать. Ну или document.querySelector('[name="test"]').
А если инпут с name="inputname" внутри формы c name="formname", то можно его получить так: document.formname.inputname
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
bingo347
@bingo347 Куратор тега JavaScript
Crazy on performance...
Потому что getElementsByName возвращает не один элемент, а коллекцию NodeList
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы