@andrey_levushkin

Как собрать все значения input со страницы в массив?

Допустим, на странице есть N полей input
<input id="testId" class="testClass" type="number">
<input id="testId" class="testClass" type="number">
...
<input id="testId" class="testClass" type="number">

Как собрать с них значения в 1 массив?
Со всех полей
  • Вопрос задан
  • 3339 просмотров
Решения вопроса 3
Kozack
@Kozack Куратор тега JavaScript
Thinking about a11y
Примерно так:
Array.from(document.querySelectorAll('input')).map(inputElement => inputElement.value)
Ответ написан
Комментировать
@hello_my_name_is_dany
Backend Developer (Node.js, PHP, C#)
Есть много способов
Первое, что пришло в голову:
<input name="test" class="testClass" type="number">
<input name="test" class="testClass" type="number">
<input name="test" class="testClass" type="number">

function getValues() {
  const numbers = [];
  const inputs = document.getElementsByName('test');

  for (const input of inputs) {
    numbers.push(Number(input.value));
  }

  return number;
}
Ответ написан
Комментировать
Tim-A-2020
@Tim-A-2020
Если нужны только значения
[...document.querySelectorAll('input')].map(v => v.value);

Или
Array.from(document.querySelectorAll('input'), v=> v.value);


Если нужны и другие атрибуты, то можно собрать такой массив объектов
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы