@Zorgios

Как собрать имена всех активных чекбоксов из таблицы в массив, для дальнейшей работы с ними?

Имеется таблица вида
<table id="mainTable">
  <tbody>
    <tr>
      <td>
        <a href=testPath/name1.jpg"><img src="testPath/name1.jpg" alt="" width="100"></a>
        <input type="checkbox" name="testText1" value="testText1">
      </td>
    </tr>
    <tr>
      <td>
        <a href=testPath/name1.jpg"><img src="testPath/name2.jpg" alt="" width="100"></a>
        <input type="checkbox" name="testText2" value="testText2">
      </td>
    </tr>
    ...
    <tr>
      <td>
        <a href=testPath/name1.jpg"><img src="testPath/nameN.jpg" alt="" width="100"></a>
        <input type="checkbox" name="testTextN" value="testTextN">
      </td>
    </tr>
  </tbody>
</table>

Иными словами. В каждой строке таблицы изображение и чекбокс. Строк может быть N количество.
Каким образом можно собрать значения всех активных чекбоксов из таблицы, сохранив их имена в массив (для дальнейшей обработке).
  • Вопрос задан
  • 81 просмотр
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
const names = Array.from(
  document.querySelectorAll('#mainTable input:checked'),
  n => n.name
);

или

const names = Array.prototype.reduce.call(
  document.getElementById('mainTable').getElementsByTagName('input'),
  (acc, n) => (n.checked && acc.push(n.getAttribute('name')), acc),
  []
);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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