получить двумерный массив из таблицы html

У меня есть таблица

<table id = "table">
    <tbody>
        <tr>
        <td> <input type="text" name="a00"> </td>
        <td> <input type="text" name="a01"> </td>
        <td> <input type="text" name="a02"> </td>
        </tr>
        <tr>
        <td> <input type="text" name="a10"> </td>
        <td> <input type="text" name="a11"> </td>
        <td> <input type="text" name="a12"> </td>               
        </tr>
        <tr>
        <td> <input type="text" name="a20"> </td>
        <td> <input type="text" name="a21"> </td>
        <td> <input type="text" name="a22"> </td>               
        </tr>
    </tbody>   
</table>

Как мне из этой таблицы получить двумерный массив, чтобы я мог использовать его как аргумент для функции, например PrintMatrix(arr)


Ответы (1 шт):

Автор решения: Проста Miha

Наверное как-то так

const table = document.querySelector('table');
const tbody = table.querySelector('tbody');
const tr = tbody.querySelectorAll('tr');
let tableArray = new Array();

for (let i = 0; i < tr.length; i++) {
  tableArray[i] = new Array();
  for (let j = 0; j < tr[i].children.length; j++) {
    tableArray[i][j] = tr[i].children[j].children;
  }
}

console.log(tableArray);
<table id="table">
  <tbody>
    <tr>
      <td> <input type="text" name="a00"> </td>
      <td> <input type="text" name="a01"> </td>
      <td> <input type="text" name="a02"> </td>
    </tr>
    <tr>
      <td> <input type="text" name="a10"> </td>
      <td> <input type="text" name="a11"> </td>
      <td> <input type="text" name="a12"> </td>
    </tr>
    <tr>
      <td> <input type="text" name="a20"> </td>
      <td> <input type="text" name="a21"> </td>
      <td> <input type="text" name="a22"> </td>
    </tr>
  </tbody>
</table>

→ Ссылка