Перебор первого столбца таблицы
Здравствуйте!
Подскажите как перебрать весь первый столбец в таблице при помощи JavaScript. В ячейках нужно заменить текст. Спасибо. |
<table id="table"> <tr> <td>1</td> </tr> <tr> <td>1</td> </tr> <tr> <td>1</td> </tr> <tr> <td>1</td> </tr> </table> <script> list= document.getElementById("table").getElementsByTagName("tr"); for (var i=0; i< list.length; ++i) { list[i].getElementsByTagName("td")[0].innerHTML="2"; }; </script> |
trikadin, у таблицы есть коллекция rows, а у элементов той коллекции есть коллекция cells...
Пример из МСДН <HTML> <SCRIPT LANGUAGE="JScript"> function numberCells() { var count=0; for (i=0; i < document.all.oTable.rows.length; i++) { for (j=0; j < document.all.oTable.rows(i).cells.length; j++) { document.all.oTable.rows(i).cells(j).innerText = count; count++; } } } </SCRIPT> <BODY onload="numberCells()"> <TABLE id=oTable border=1> <TR><TH> </TH><TH> </TH><TH> </TH><TH> </TH></TR> <TR><TD> </TD><TD> </TD><TD> </TD><TD> </TD></TR> <TR><TD> </TD><TD> </TD><TD> </TD><TD> </TD></TR> </TABLE> </BODY> </HTML> |
Код не работает в FF. Ошибка: table.rows is not a function [Прерывать на этой ошибке] table.rows[i].cells[0]...eplace(/<strong.*?<\/strong>/g, ''); |
Цитата:
|
an.semionov, это всего лишь демонстрация, описаных мной, методов... Они работают везде. А вот
document.all.oTable не везде... Используй document.getElementById('oTable') |
<HTML> <SCRIPT LANGUAGE="JScript"> function numberCells() { var o=document.getElementById('oTable'); var count=0; for (i=0; i < o.rows.length; i++) { for (j=0; j < o.rows(i).cells.length; j++) { o.rows(i).cells(j).innerHTML = count; count++; } } } </SCRIPT> <BODY onload="numberCells()"> <TABLE id='oTable' border=1> <TR><TH> </TH><TH> </TH><TH> </TH><TH> </TH></TR> <TR><TD> </TD><TD> </TD><TD> </TD><TD> </TD></TR> <TR><TD> </TD><TD> </TD><TD> </TD><TD> </TD></TR> </TABLE> </BODY> </HTML> |
Цитата:
Ошибка: table.rows is not a function [Прерывать на этой ошибке] table.rows[i].cells[0]...eplace(/<strong.*?<\/strong>/g, ''); |
an.semionov, а чуть самостоятельности? :)
<!DOCTYPE html> <html> <head> <title>test</title> <style type="text/css"> </style> <script type="text/javascript"> function numberCells() { var o=document.getElementById('oTable'); var count=0; for (i=0; i < o.rows.length; i++) { for (j=0; j < o.rows[i].cells.length; j++) { o.rows[i].cells[j].innerHTML = count; count++; } } } </script> </head> <body onload="numberCells()"> <TABLE id='oTable' border=1> <TR><TH> </TH><TH> </TH><TH> </TH><TH> </TH></TR> <TR><TD> </TD><TD> </TD><TD> </TD><TD> </TD></TR> <TR><TD> </TD><TD> </TD><TD> </TD><TD> </TD></TR> </TABLE> </body> </html> |
Пробовал [], не сработало, видимо забыл изменить в условии цикла, спасибо.
|
Часовой пояс GMT +3, время: 18:53. |