Перебор первого столбца таблицы
Здравствуйте!
Подскажите как перебрать весь первый столбец в таблице при помощи 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, время: 01:32. |