|
|
|
|
|
для: 12345
(01.12.2005 в 21:58)
| | Большое спасибо! Все прекрасно работает, и под ИЕ, и под Оперу.
Еще, по мелочи: какие события возникают при отметке/снятии галочки на <input type=checkbox>? | |
|
|
|
|
|
|
|
для: Киналь
(01.12.2005 в 20:31)
| | Можно подсчитать, но в данном случае надо выделить теги по признаку. Поэтому пишем условие выделения:
<script>d=document;
function hide_admin()
{
for(i=1;i<d.getElementsByTagName('table').length;i++)if(d.getElementById('trash'+i))d.getElementById('trash'+i).style.display='none';
}
function show_admin()
{
for(i=1;i<d.getElementsByTagName('table').length;i++)if(d.getElementById('trash'+i))d.getElementById('trash'+i).style.display='';
}
</script>
<br><a href=# onclick=hide_admin()>Hide</a> . . . <a href=# onclick=show_admin()>Show</a>
<table ...> <tr><td>1</td></tr></table><!--ID вообще нет-->
<table id=trash1 ...> <tr><td>2</td></tr></table>
<table id=trash2 ...> <tr><td>3</td></tr></table>
<table ...> <tr><td>4</td></tr></table> <!--ID вообще нет-->
<table id=trash3> <tr><td>5</td></tr></table>
|
| |
|
|
|
|
|
|
|
для: 12345
(30.11.2005 в 19:18)
| | Проблемы остались... Подогнал под себя, получил вот что:
<script>
d=document;
function hide_admin()
{
for(i=1;i<d.getElementsByTagName('table').length;i++)d.getElementById('trash'+i).style.display='none';
}
function show_admin()
{
for(i=1;i<d.getElementsByTagName('table').length;i++)d.getElementById('trash'+i).style.display='';
}
</script>
|
Но проблема в том, что в цикле берется i от единицы до числа тегов table на странице, и столько раз ищется id='trash'+i. Естественно, это приводит к ошибке, так как таблиц с id такого вида меньше. Проще говоря:
<table ...> <!--ID вообще нет-->
<table id=trash1 ...>
<table id=trash2 ...>
<table ...> <!--ID вообще нет-->
<table id=trash3>
|
Вот он и ищет trash4 и trash5, которых не существует.
В принципе, можно подставлять в условие цикла нужное число средствами РНР, но тогда придется использовать буфер и вообще усложнять код. Посему вопрос: можно ли подсчитать число тегов table, вообще имеющих id? | |
|
|
|
|
|
|
|
для: Киналь
(30.11.2005 в 18:14)
| | См. код по ссылке | |
|
|
|
|
|
|
|
для: 12345
(30.11.2005 в 04:19)
| | Спасибо, уже понятнее=) Но все равно не все ясно, к сожалению. Что есть someText? | |
|
|
|
|
|
|
|
для: Киналь
(29.11.2005 в 23:16)
| | Это ещё не код, а его скелет, идея. Русские слова там, конечно, заменяете на коды, зависящие от вашего контекста (и d=document; ).
На соседнем сайте я привёл недавно кроссбраузерное решение с сокрытием группы таблиц - http://forum.vingrad.ru/index.php?showtopic=71995 - там скрывается группа, а затем включается одна таблица с целью сделать навигацию по слоям. Вот эта строчка -
>> for(i=0;i<d.getElementsByTagName('pre').length;i++)d.getElementById('someText'+i).className='';
| как раз выполняет скрывание. Возможно, пример поможет. | |
|
|
|
|
|
|
|
для: 12345
(28.11.2005 в 02:08)
| | . | |
|
|
|
|
|
|
|
для: 12345
(28.11.2005 в 02:08)
| | Нет, все-таки я танкист... Ничего не получилось из вставки этого кода. Получал одно за другим требования исправить синтаксис, а под конец - ни сообщений, ни результатов=)
Словом, огромная просьба - все-таки написать поподробнее, идеально - вообще функцию.
Но только одно уточнение - если вообще моя идея осуществима только в ИЕ, то скажите, пожалуйста, об этом - лучше не буду делать вообще. | |
|
|
|
|
|
|
|
для: Киналь
(27.11.2005 в 22:31)
| | Вот так в IE:
for(i in d.all.tags('table'))if(d.all[i].className=='помеченные')with(d.all[i]){скрыть;}
|
| |
|
|
|
|
|
|
|
для: Crux
(27.11.2005 в 20:07)
| | Эх-х, видно, плохо у меня получается спрашивать...
Да, я могу определить нужные мне сообщения, могу им всем дать одинаковую метку - класс, или id, или еще чего-нибудь. Могу даже разные - присваивать нужным сообщениям порядковые номера в цикле вывода сообщений. Но как средствами JS все эти "меченые" скрыть? Тут предложили присваивать класс, и скрывать все элементы этого класса. Думаю, это выход. Но как это сделать? getElementByClass вряд ли существует=) | |
|
|
|
|