Еще вопрос от новичка...
Есть хтмл-код(структуру показать):
<div id="q" onclick="func('w1')">Тык</div> <div id="w1"> <div id="e1"> <div id="r1"></div> </div> </div> <div id="w2"> <div id="e2"> <div id="r2"></div> </div> </div> <div id="w3"> <div id="e3"> <div id="r3"></div> </div> </div> <div id="w4"> <div id="e4"> <div id="r4"></div> </div> </div> Количество дивов определяется количеством записей в базе (выводится все языком GishopML, если кто-то слышал о таком) id этих дивов тоже выводится из базы в соответствии с номером записи.(сейчас их порядка 150) Подскажите, пожалуйста, как правильно оформить скрипт, чтобы функция срабатывала на все <div> с id="wN", кроме дива с id=w1 Спасибо за внимание.:thanks: |
Цитата:
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Windows-1251"> <style type="text/css"> </style> <script> function Go() { var i=2 while (document.getElementById('w'+i)) { alert(i) i++ } } </script> </head> <body> <div id="q" onclick='Go()'>Тык</div> <div id="w1"> <div id="e1"> <div id="r1"></div> </div> </div> <div id="w2"> <div id="e2"> <div id="r2"></div> </div> </div> <div id="w3"> <div id="e3"> <div id="r3"></div> </div> </div> <div id="w4"> <div id="e4"> <div id="r4"></div> </div> </div> </body> </html> |
Спасибо, но это не совсем то...
Если надо такое же действие провернуть с div id="w2", т.е. чтобы на все div с id="wN" (включая первый) кроме него сработала функция, как поступить? Лучшим, на мой взгляд, было бы представление в javascript функции параметра SQL " like 'w%' ". Возможно такое реализовать? как? |
Цитата:
Тогда так.. <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Windows-1251"> <style type="text/css"> </style> <script> function Go(N) { var i=1 while (document.getElementById('w'+i)) { if (i==N) { i++ continue } alert(i) i++ } } </script> </head> <body> <div id="q" onclick='Go(3)'>Тык</div> <div id="w1"> <div id="e1"> <div id="r1"></div> </div> </div> <div id="w2"> <div id="e2"> <div id="r2"></div> </div> </div> <div id="w3"> <div id="e3"> <div id="r3"></div> </div> </div> <div id="w4"> <div id="e4"> <div id="r4"></div> </div> </div> </body> </html> Цитата:
|
Спасибо Вам большое за помощь.
У меня еще вопрос по этой же теме. В случае нарушения нумерации (если какой то из пунктов пропущен, к примеру) на следующем после "пропущенного" и следующих за ним div'ах скрипт перестает работать. Подскажите, пожалуйста, как поступить в этом случае? Грубо говоря, в конечном виде, нужна "инверсия", выбрал один пункт - сработали все остальные. |
Цитата:
|
По-подробнее можете, пожалуйста, рассказать?
Что именно надо поменять? |
Цитата:
Т.е. вариантов масса. :) Можно определить первый и к следующим двигаться специальным методом... |
Цитата:
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=Windows-1251"> <style type="text/css"> </style> <script> function Go(N) { var i=document.getElementById('container').childNodes[0] while (i) { if (i.id==('w'+N)) { i=i.nextSibling continue } alert(i.id) i=i.nextSibling } } </script> </head> <body> <div id="q" onclick='Go(3)'>Тык</div> <div id='container'> <div id="w1"> <div id="e1"> <div id="r1"></div> </div> </div> <div id="w3"> <div id="e3"> <div id="r3"></div> </div> </div> <div id="w4"> <div id="e4"> <div id="r4"></div> </div> </div> </div> </body> </html> Тестил в ИЕ7... |
Благодарю! То, что надо! :thanks:
|
Часовой пояс GMT +3, время: 12:42. |