![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
Как подсчитать у скольких <div> ID начинается с "r"
-------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| Alx |
|
|||
|
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
<html>
<script> for (var i; i<document.all.length; i++) {if (document.all[i].tagName == "DIV" && document.all[i].id.indexOf("r") != -1) bod.virtval++; } </script> <body virtval="0"> <div id="r4"></div> <div id="f2"></div> <div id="r5"></div> <div id="e3"></div> </body> </html> определяет правда на наличие символа "r" в ID. Т.е. посчитает и "r5" и "tpru!". |
|||
|
||||
| GoodBoy |
|
||||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
Заменить это:
на вот это:
и все будет гут!!! |
||||
|
|||||
| Alx |
|
|||
|
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
вот правильный код, я не успел тогда проверить - деньги кончились!
<html> <script> function func() {for (var i=0; i<=document.all.length-1; i++) {if (document.all[i].tagName == "DIV" && document.all[i].id.match("^r") != null) bod.virtval++; } alert(bod.virtval); } </script> <body id="bod" virtval="0" onload="func();"> <div id="r4"></div> <div id="f2"></div> <div id="r5"></div> <div id="e3"></div> </body> </html> |
|||
|
||||
| Alx |
|
|||
|
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
кстати, теперь только на первый символ проверяет! т.е. теперь "r5" он посчитает, а "tpru!" нет!
|
|||
|
||||
| GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
2 ALEXANDRO А зачем регэкспом?? document.all[i].id.indexOf("r") вернет тебе 0 только в том случае, когда символ "r" находится в первой позиции...
|
|||
|
||||
| Alx |
|
|||
|
Ajaxy ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2903 Регистрация: 26.11.2003 Где: Cutopia Репутация: 10 Всего: 78 |
да? не знал. я как запомнил год назад, что если "!= -1", значит он там есть, а если "== -1", то его там нет!
|
|||
|
||||
| GoodBoy |
|
|||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
Нумерация начинается с 0, т. е. если элемент найден в 1-й позиции, то функция вернет 0, если в 15-й - то 14 и т.д. -1 возвращается в случае, если искомый элемент в строке не присутствует.
|
|||
|
||||
| Gold Dragon |
|
|||
![]() Призрачный ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6753 Регистрация: 1.3.2004 Где: Россия, Тамбов Репутация: 1 Всего: 71 |
А для надежности нужно будет использовать
document.getElementById document.all document.layers я прав? -------------------- Нельзя жить в прошлом, оно уже прошло. Нельзя жить в будущем, оно ещё не наступило. Нужно жить в настоящем, помня прошлое и думая о будущем! |
|||
|
||||
| GoodBoy |
|
||||
![]() Главный джедай ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 3886 Регистрация: 8.1.2003 Где: КМВ Репутация: 2 Всего: 83 |
Не совсем... Да, document.all сработает практически только в ИЕ, а для остальный браузеров, в зависимости от того, какой это браузер, нужно использовать или document.getElementById (для DOMных) браузеров или document.layers для старых Нетскейпов и иже с ними для доступа к конкретному элементу страницы...
НО! Я, к сожалению, не помню можно ли как-то получить список всех элементов страницы в этих случаях... :-((( Если Вы решите этот вопрос, то скиньте сюда! А в общем случае для конкретного элемента страницы можно воспользоваться этом:
И основную проверку записать в виде:
|
||||
|
|||||
![]()
|
| Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |