Неопределенное свойство id для объекта td при доступе через коллекцию строк / ячеек - PullRequest
1 голос
/ 10 марта 2010

Что я делаю не так здесь:

Когда я пытаюсь использовать метод getttribute ['id'] для объекта TableCell, который я получаю при переборе строк / ячеек таблицы, он возвращает undefined:

var rows = document.getElementById["table"].rows;
var cells;
for(var i=0; i < rows.length; i++) {
 cells = rows[i].cells
 for(var j=0; j < cells.length; j++) {
  alert(cells[j].innerHTML); //returns Cell1
  alert(cells[j].getAttribute["id"]); //returns undefined
  alert(document.getElementById["c1"].innerHTML); //returns Cell1

 }
}

Это пример HTML:

    <table id="table">
    <tbody>
        <tr>
         <td id="c1">Cell1</td>
        </tr>
    </tbody> 
</table>

Вопрос в том, почему метод getAttribute возвращает undefined для всех атрибутов при доступе через ячейки [j]?

Ответы [ 5 ]

1 голос
/ 10 марта 2010

Вы используете квадратные скобки [] вместо скобок () при вызовах getElementById и getAttribute

//change

getElementById["table"]
getAttribute["id"]
getElementById["c1"]

//to

getElementById("table")
getAttribute("id")
getElementById("c1")

//Respectively.
1 голос
/ 10 марта 2010

getAttribute - метод, и вы используете его в качестве индексатора

Используйте

alert(cells[j].getAttribute("id"));

Также замените

document.getElementById["table"].rows;

с

document.getElementById("table").rows;

и

document.getElementById["c1"].innerHTML

с

document.getElementById("c1").innerHTML

getElementById также является методом.

0 голосов
/ 11 июля 2013

Также вы можете использовать метод getAttribute:

xmlDoc.getElementsByTagName("sec")[0].getAttribute("id")

Здесь я вернусь s1 для тега типа <sec id="s1">.

0 голосов
/ 10 марта 2010

Просто используйте ячейки [j] .id, чтобы получить идентификатор ячейки.

0 голосов
/ 10 марта 2010

Не знаю почему, но getAttribute не нравится атрибут id. Вместо этого используйте cells[j].id.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...