Как я выполняю итерации через строки таблицы и ячейки в JavaScript?

Если у меня есть HTML-таблица... говорят

<div id="myTabDiv">
<table name="mytab" id="mytab1">
  <tr> 
    <td>col1 Val1</td>
    <td>col2 Val2</td>
  </tr>
  <tr>
    <td>col1 Val3</td>
    <td>col2 Val4</td>
  </tr>
</table>
</div>

Как я выполнил бы итерации через все строки таблицы (предполагающий, что количество строк могло измениться каждый раз, когда я проверяю), и получите значения от каждой ячейки в каждой строке из JavaScript?

174
задан Brett DeWoody 23 July 2017 в 15:00
поделиться

2 ответа

Если вы хотите просмотреть каждую строку ( ), зная / идентифицируя строку ( ), и перебрать каждый столбец ( < td> ) каждой строки ( ), то это путь.

var table = document.getElementById("mytab1");
for (var i = 0, row; row = table.rows[i]; i++) {
   //iterate through rows
   //rows would be accessed using the "row" variable assigned in the for loop
   for (var j = 0, col; col = row.cells[j]; j++) {
     //iterate through columns
     //columns would be accessed using the "col" variable assigned in the for loop
   }  
}

Если вы просто хотите пройтись по ячейкам ( ), игнорируя, в какой строке вы находитесь, то это правильный путь.

var table = document.getElementById("mytab1");
for (var i = 0, cell; cell = table.cells[i]; i++) {
     //iterate through cells
     //cells would be accessed using the "cell" variable assigned in the for loop
}
275
ответ дан 23 November 2019 в 20:31
поделиться

Вы можете рассмотреть возможность использования jQuery. С jQuery это очень просто и может выглядеть так:

$('#mytab1 tr').each(function(){
    $(this).find('td').each(function(){
        //do your stuff, you can use $(this) to get current cell
    })
})
60
ответ дан 23 November 2019 в 20:31
поделиться
Другие вопросы по тегам:

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