Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.06.2011, 00:30
Интересующийся
Отправить личное сообщение для an.semionov Посмотреть профиль Найти все сообщения от an.semionov
 
Регистрация: 11.05.2011
Сообщений: 13

Перебор первого столбца таблицы
Здравствуйте!

Подскажите как перебрать весь первый столбец в таблице при помощи JavaScript. В ячейках нужно заменить текст.

Спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 27.06.2011, 01:27
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

<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>
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #3 (permalink)  
Старый 27.06.2011, 10:01
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

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>&nbsp;</TH><TH>&nbsp;</TH><TH>&nbsp;</TH><TH>&nbsp;</TH></TR>
<TR><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD></TR>
<TR><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD></TR>
</TABLE>
</BODY>
</HTML>
Ответить с цитированием
  #4 (permalink)  
Старый 27.06.2011, 10:22
Интересующийся
Отправить личное сообщение для an.semionov Посмотреть профиль Найти все сообщения от an.semionov
 
Регистрация: 11.05.2011
Сообщений: 13

Спасибо, все работает.
Код не работает в FF.

Ошибка:
table.rows is not a function
[Прерывать на этой ошибке] table.rows[i].cells[0]...eplace(/<strong.*?<\/strong>/g, '');

Последний раз редактировалось an.semionov, 27.06.2011 в 14:22.
Ответить с цитированием
  #5 (permalink)  
Старый 27.06.2011, 11:24
Интересующийся
Отправить личное сообщение для an.semionov Посмотреть профиль Найти все сообщения от an.semionov
 
Регистрация: 11.05.2011
Сообщений: 13

Сообщение от ksa Посмотреть сообщение
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>&nbsp;</TH><TH>&nbsp;</TH><TH>&nbsp;</TH><TH>&nbsp;</TH></TR>
<TR><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD></TR>
<TR><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD></TR>
</TABLE>
</BODY>
</HTML>
Данное решение не работает в firefox
Ответить с цитированием
  #6 (permalink)  
Старый 27.06.2011, 11:37
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

an.semionov, это всего лишь демонстрация, описаных мной, методов... Они работают везде. А вот

document.all.oTable


не везде...
Используй

document.getElementById('oTable')
Ответить с цитированием
  #7 (permalink)  
Старый 27.06.2011, 11:39
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

<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>&nbsp;</TH><TH>&nbsp;</TH><TH>&nbsp;</TH><TH>&nbsp;</TH></TR>
<TR><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD></TR>
<TR><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD></TR>
</TABLE>
</BODY>
</HTML>
Ответить с цитированием
  #8 (permalink)  
Старый 27.06.2011, 14:05
Интересующийся
Отправить личное сообщение для an.semionov Посмотреть профиль Найти все сообщения от an.semionov
 
Регистрация: 11.05.2011
Сообщений: 13

Сообщение от ksa Посмотреть сообщение
<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>&nbsp;</TH><TH>&nbsp;</TH><TH>&nbsp;</TH><TH>&nbsp;</TH></TR>
<TR><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD></TR>
<TR><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD></TR>
</TABLE>
</BODY>
</HTML>
в FF не работает код, таблица создается, но не заполняется.

Ошибка:
table.rows is not a function
[Прерывать на этой ошибке] table.rows[i].cells[0]...eplace(/<strong.*?<\/strong>/g, '');

Последний раз редактировалось an.semionov, 27.06.2011 в 14:26.
Ответить с цитированием
  #9 (permalink)  
Старый 27.06.2011, 14:42
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

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>&nbsp;</TH><TH>&nbsp;</TH><TH>&nbsp;</TH><TH>&nbsp;</TH></TR>
	<TR><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD></TR>
	<TR><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD><TD>&nbsp;</TD></TR>
</TABLE>
</body>
</html>
Ответить с цитированием
  #10 (permalink)  
Старый 27.06.2011, 15:03
Интересующийся
Отправить личное сообщение для an.semionov Посмотреть профиль Найти все сообщения от an.semionov
 
Регистрация: 11.05.2011
Сообщений: 13

Пробовал [], не сработало, видимо забыл изменить в условии цикла, спасибо.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подсветка столбцов таблицы ctocopok Элементы интерфейса 31 14.06.2011 01:42
Перебор DOM элементов DjDiablo jQuery 3 04.02.2011 16:26
После первого действия скрипт перестает работать cyberx jQuery 6 12.06.2010 22:04
Ширина таблицы Syltan (X)HTML/CSS 1 01.05.2010 22:33
Фиксированный заголовок таблицы ilshat Элементы интерфейса 6 20.12.2008 00:35