js. Поиск элементов по name

295
11 ноября 2017, 14:47

Есть обычная html форма, типа

<form action="" method="POST" id="form">
    <input type="hidden" name="sum" value="22"> 
    <input type="hidden" name="age" value="18"> 
    <input type="submit">
</form> 

Получим форму в js, var form = document.querySelector('#form');.

Вопрос, как получить элемент этой формы с именем sum, form.getElementsByName('sum')[0]; не работает, т.к. getElementsByName применяется только к document?

Answer 1

// Длинно и нудно 
console.log(document.getElementById('form').querySelector('[name="sum"]')) 
 
// Короче, но всё ещё длинно и нудно 
console.log(document.querySelector('#form input[name="sum"]')) 
 
// Коротко 
console.log(form.elements.sum) 
 
// Ещё короче 
console.log(form.sum)
<form action="" method="POST" id="form"> 
  <input type="hidden" name="sum" value="22"> 
  <input type="hidden" name="age" value="18"> 
  <input type="submit"> 
</form>

Answer 2

Здравствуйте

Такое должно сработать:

var form = document.querySelector('#form');
var sum= form.elements.sum.value; // значение sum
READ ALSO
Сложный слайдер slick

Сложный слайдер slick

Есть задание сделать слайдерВот такого типа

267
JSON: Error: Unexpected EOF и Error: Invalid or unexpected token

JSON: Error: Unexpected EOF и Error: Invalid or unexpected token

У меня имеется старый самопис движок (2009-11 года)

580
Выбор лучших мест в зале

Выбор лучших мест в зале

Лучшими, можно считать географически центральные местаКак получить массив самых центральных мест?

389