Показать сообщение отдельно
  #1 (permalink)  
Старый 13.07.2013, 09:15
Аспирант
Отправить личное сообщение для vladislav.blinov Посмотреть профиль Найти все сообщения от vladislav.blinov
 
Регистрация: 13.07.2013
Сообщений: 30

поиск элементов dom
Всем привет столкнулся с такой проблемой у меня есть таблица которая формируется циклом и группируется по дате. В зависимости от даты мне нужно скрывать/отображать строки. выглядит след образом:
<table>
	<tr class="date_01_07_2013"><td>01.07.2013(Это основное поле на котором кнопка скрыть/отобразить)</td></tr>
	<tr class="dt01_07_2013">
		<td>имя</td>
		<td>фамилия</td>
	</tr>
	<tr class="dt01_07_2013">
		<td>имя</td>
		<td>фамилия</td>
	</tr>
	<tr class="dt01_07_2013">
		<td>имя</td>
		<td>фамилия</td>
	</tr>
	.....и так на каждую дату
	<tr class="date_31_07_2013"><td>31.07.2013</td></tr>
	<tr class="dt31_07_2013">
		<td>имя</td>
		<td>фамилия</td>
	</tr>
	<tr class="dt31_07_2013">
		<td>имя</td>
		<td>фамилия</td>
	</tr>
	<tr class="dt31_07_2013">
		<td>имя</td>
		<td>фамилия</td>
	</tr>
</table>

чтобы скрывать/отображать поля я решил присваивать tr классу display = 'none';/display = 'table-row'; написал вот такой скрипт
function close(){
var divs=document.getElementsByTagName("TR");
for( var i=0; i<divs.length; i++)
   if(divs[i].className=="dt01.07.2013")
     divs[i].style.display = 'none';
}
                
 function open(){
var divs=document.getElementsByTagName("TR");
for( var i=0; i<divs.length; i++)
   if(divs[i].className=="dt01.07.2013")
     divs[i].style.display = 'table-row';
}

а в цикл к главному окну с датой добавил
<i class="icon-min" onclick="clos()"></i>
            <i class="icon-max" onclick="open()"></i>

в итоге получилось скрывать и отображать только первое число а чтобы скрывать и отображать остальные мне нужно скопировать скрипт 60 раз и менять только className и имя функции

я знаю что можно эту функцию сделать как массив или цикл но вот как это написать знаний увы не хватает а времени в обрез подскажите как это можно реализовать или литературу где об этом можно прочитать.
Ответить с цитированием