Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Подсчет дочерних елементов Div


Автор: Riccon 17.4.2005, 09:54
Подскажите плз, как можно сосчитать количество елементов внутри Div`a?

Код

<Div id="main">
  <Div>Объект 1</Div>
  <Div>Объект 2</Div>
  <Div>Объект 3</Div>

  <Div>Объект N</Div>
</Div>

Автор: Irokez 17.4.2005, 10:37
Код

nodes = document.getElementById('main').childNodes;
count = 0;
for (var i = 0; i <= nodes.length; i++) {
    if (nodes[i].tagName == 'DIV') count++;
}
alert(count);

Автор: Sardar 17.4.2005, 19:28
Если нужно подсчитать все div'ы включая вложенные, то:
Код
count = document.getElementById('main').getElementsByTagName("DIV").length;
alert(count);

Автор: Riccon 18.4.2005, 11:30
Ага, помогло, большое спасибо.

Автор: Иль 19.4.2005, 01:26
Sardar, и от меня огромное спасибо smile
Вот ведь вовремя!

Автор: Иль 19.4.2005, 22:21
Sardar, а еще хорошо показанным тобой способом работать с элементами получаемой коллекции, незадумываясь о степени их вложенности. В цикле селектируем по нужному свойству и делаем что хотим smile.
Aliance навел.

Автор: Aliance 19.4.2005, 22:25
Иль, Riccon будьте немного хоть благодарны. На форуме не случайно введена система репутации. Поставил от вас плюс.
ЗЫ: читаем ссылку из моей подписи: http://forum.vingrad.ru/index.php?showtopic=24037

Автор: Irokez 19.4.2005, 22:30
Цитата(Aliance @ 19.4.2005, 22:25)
Иль, Riccon будьте немного хоть благодарны. На форуме не случайно введена система репутации. Поставил от вас плюс.

у них же 100 постов нету =)

Автор: Aliance 19.4.2005, 22:38
Цитата(Irokez @ 19.4.2005, 23:30)
у них же 100 постов нету =)

Поймал меня :-))))) Но я за них отблагодарил =)

Автор: Irokez 19.4.2005, 22:40
Цитата(Aliance @ 19.4.2005, 22:38)
Но я за них отблагодарил =)

и правильно smile

Автор: Иль 20.4.2005, 00:56
А вы что думали я тут в каждом посте распинаюсь: Спасибо, да Спасибо.
Туда спасибо, сюда спасибо.
Без рук и без ног (100 постов) только одни спасибо и вывешиваются smile

Ну ничего, с этим будет 99й пост. Я все хорошее помню... (особенно невероятное терпение)
Кстати, давно смекнул, но как-то недогонял сказать про 100, сорри.

Цитата(Irokez @ 19.4.2005, 22:40)
и правильно

smile Нахал smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)