Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 31.01.2010, 16:46
Профессор
Отправить личное сообщение для SunYang Посмотреть профиль Найти все сообщения от SunYang
 
Регистрация: 22.02.2008
Сообщений: 189

как записать id всех элементов в массив?
как записать id всех элементов в массив?
Ответить с цитированием
  #2 (permalink)  
Старый 31.01.2010, 16:58
Аватар для micscr
Профессор
Отправить личное сообщение для micscr Посмотреть профиль Найти все сообщения от micscr
 
Регистрация: 10.09.2009
Сообщений: 1,566

var arr = [];
var list = document.getElementsByTagName('*');
for (var i=0; i<list.length; i++)
{
    if (list[i].id) arr.push(list[i].id);
}
Ответить с цитированием
  #3 (permalink)  
Старый 03.02.2010, 19:21
Профессор
Отправить личное сообщение для SunYang Посмотреть профиль Найти все сообщения от SunYang
 
Регистрация: 22.02.2008
Сообщений: 189

Вот это говорит undefined:
function go1() {
var arr = [] // массив значений id
var list = document.getElementsByTagName('*');
for(i=0; i<list.length; i++) {
if(list[i].id) arr.push(list[i].id);
}
document.write(arr[i])
}
</script>


<input type="button" value="Save" onclick="go1()">

<table width="600" border="1" cellspacing="0" cellpadding="0">
<tr>
<td align="center" id="a3">Data1</td>
<td align="center" id="b3">Data2</td>
<td align="center" id="c3">Data3</td>
</tr>
</table>
Ответить с цитированием
  #4 (permalink)  
Старый 03.02.2010, 19:26
Аватар для PeaceCoder
Профессор
Отправить личное сообщение для PeaceCoder Посмотреть профиль Найти все сообщения от PeaceCoder
 
Регистрация: 15.12.2009
Сообщений: 742

Сообщение от SunYang
document.write(arr[i])
alert(arr);
__________________
Настоящий программист думает и осознает сам решение задачи, а не копирует другие мысли, не осознавая их (c)
Относись к человеку так же, как хотелось бы отношения к себе (с)
Все нужно там, где оно нужно, а все не нужно нигде (с) Gozar
B~Vladi: А кто такой JavaScript стрелок?! micscr: это тот, кто не jQuery танкист.
Программы становятся медленнее быстрее, чем компьютеры становятся быстрее (с) Никлаус Вирт
Ответить с цитированием
  #5 (permalink)  
Старый 03.02.2010, 19:47
Профессор
Отправить личное сообщение для SunYang Посмотреть профиль Найти все сообщения от SunYang
 
Регистрация: 22.02.2008
Сообщений: 189

Функция записывает в значения id элементов, у которых нет id в значении null. Почему вот с этим условием if(list[i].id) она не пропускает запись в массив элементов без айдишников?
Ответить с цитированием
  #6 (permalink)  
Старый 03.02.2010, 20:03
Профессор
Отправить личное сообщение для SunYang Посмотреть профиль Найти все сообщения от SunYang
 
Регистрация: 22.02.2008
Сообщений: 189

Вот это вот выводит 9 раз undefined прежде чем начать выводить a3, b3, c3. Выходт в массив arr[] всё записывается?
<script>
function go1() {
var arr = [] // массив значений id
var list = document.getElementsByTagName('*');
for(i=0; i<list.length; i++) {
if(list[i].id) arr[i] =list[i].id;
alert(arr[i])
}

}
</script>


<input type="button" value="Alert" onclick="go1()">

<table width="600" border="1" cellspacing="0" cellpadding="0">
<tr>
<td align="center" id="a3">Data1</td>
<td align="center" id="b3">Data2</td>
<td align="center" id="c3">Data3</td>
</tr>
</table>
Ответить с цитированием
  #7 (permalink)  
Старый 03.02.2010, 20:15
Аватар для PeaceCoder
Профессор
Отправить личное сообщение для PeaceCoder Посмотреть профиль Найти все сообщения от PeaceCoder
 
Регистрация: 15.12.2009
Сообщений: 742

Сообщение от SunYang
if(list[i].id) arr[i] =list[i].id;
if(list[i].id) arr.push(list[i].id);
__________________
Настоящий программист думает и осознает сам решение задачи, а не копирует другие мысли, не осознавая их (c)
Относись к человеку так же, как хотелось бы отношения к себе (с)
Все нужно там, где оно нужно, а все не нужно нигде (с) Gozar
B~Vladi: А кто такой JavaScript стрелок?! micscr: это тот, кто не jQuery танкист.
Программы становятся медленнее быстрее, чем компьютеры становятся быстрее (с) Никлаус Вирт
Ответить с цитированием
  #8 (permalink)  
Старый 03.02.2010, 20:36
Любитель
Отправить личное сообщение для JsLoveR Посмотреть профиль Найти все сообщения от JsLoveR
 
Регистрация: 16.12.2009
Сообщений: 422

ааа, меня опередил PeaceCoder
Ответить с цитированием
  #9 (permalink)  
Старый 03.02.2010, 21:47
Профессор
Отправить личное сообщение для SunYang Посмотреть профиль Найти все сообщения от SunYang
 
Регистрация: 22.02.2008
Сообщений: 189

Все равно не работает. Теперь всю дорогу выдает только undefined. Не пойму че за нна( Все ж нормально должно быть
Ответить с цитированием
  #10 (permalink)  
Старый 03.02.2010, 21:51
Профессор
Отправить личное сообщение для SunYang Посмотреть профиль Найти все сообщения от SunYang
 
Регистрация: 22.02.2008
Сообщений: 189

вот так посмотрел:
<script>
function go1() {
var arr = [] // массив значений id
var list = document.getElementsByTagName('*');
for(i=0; i<list.length; i++) {
if(list[i].id) arr.push(list[i].id);
alert(i +' --> '+arr[i])
}

}
</script>
Все элементы массива undefined
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как передать массив из PHP в js (AJAX) Александр Иванов Общие вопросы Javascript 7 10.09.2009 10:22
Как снять фокус со всех элементов? Logo Общие вопросы Javascript 7 02.07.2009 23:53
Как лучше сделать глобальный массив skyfish AJAX и COMET 4 17.02.2009 18:05
Как обработать несколько элементов подряд? vladymyrk jQuery 1 07.01.2009 20:33
Как передать массив? remitmaster Общие вопросы Javascript 6 17.09.2008 12:47