rafavinu
rafavinu

Reputation: 305

Accessing td inner values inside a table

I am using the following to get all the table value entries.

var table = document.getElementById('mytable');

for (var r = 0, n = table.rows.length; r < 3; r++) {
    for (var c = 0, m = table.rows[r].cells.length; c < m; c++) {
        alert(table.rows[r].cells[c].innerHTML);
    }
}

However, this is returning

<input type="text" value="xyz">

Can anyone please tell how to alert 'xyz'

Upvotes: 0

Views: 1130

Answers (1)

ZarX
ZarX

Reputation: 1086

Seems like you have an input field inside the table cell Try this:

var table = document.getElementById('mytable');

for (var r = 0, n = table.rows.length; r < 3; r++) {
  for (var c = 0, m = table.rows[r].cells.length; c < m; c++) {
    alert(table.rows[r].cells[c].getElementsByTagName("input")[0].value);
  }
}
<TABLE id="mytable">
  <TR>
    <TD>
      <input value="test1">
    </TD>
    <TD>
      <input value="test2">
    </TD>
  </TR>
  <TR>
    <TD>
      <input value="test3">
    </TD>
    <TD>
      <input value="test4">
    </TD>
  </TR>
</TABLE>

Upvotes: 2

Related Questions