Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: как сделать список раскрывающимся? [2]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): « 1 [2]   

> Без описания
DelphinPRO
Отправлено: 26 Мая, 2014 - 12:45:01
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




Panoptik пишет:
а группу можно вывести в отдельном диве

Я о том же. Только для группировке все же лучше использовать tbody. Будет единая таблица, ячейки в группах не будут съезжать относительно друг друга, как если бы в отдельных таблицах.


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
PHucker
Отправлено: 26 Мая, 2014 - 12:54:21
Post Id


Новичок


Покинул форум
Сообщений всего: 25
Дата рег-ции: Май 2014  


Помог: 0 раз(а)




DelphinPRO пишет:
как я понял задачу:

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

Делается весьма просто.

Генерируем такую разметку
CODE (html):
скопировать код в буфер обмена
  1. <table id="data-table">
  2.     <tr><td class="clicker" data-id="g12">12</td><td>...</td></tr>
  3.     <tbody id="g12" class="hidden">
  4.         <tr><td>12</td><td>...</td></tr>
  5.         <tr><td>12</td><td>...</td></tr>
  6.     </tbody>
  7.     <tr><td class="clicker" data-id="g14">14</td><td>...</td></tr>
  8.     <tbody id="g14" class="hidden">
  9.         <tr><td>14</td><td>...</td></tr>
  10.         <tr><td>14</td><td>...</td></tr>
  11.     </tbody>
  12. </table>


Пишем простой яваскрипт (jQuery)
CODE (javascript):
скопировать код в буфер обмена
  1. $("#data-table").on('click', '.clicker', function(){
  2.     var relId = $(this).data('id);
  3.    $('#' + relId).toggle();
  4. });


C генерацией разметки справитесь сами? Улыбка

CSS забыл для скрытия блоков изначально

CODE (css):
скопировать код в буфер обмена
  1. .hidden { display: none; }
Улыбка

вы меня правильно поняли, но столько ответов, надо в порядок привести башку Радость
(Добавление)
извините, вы можете показать на примере с моим кодом? хотя бы кончик.
для новичка сложновато что ли понять...
 
 Top
PHucker
Отправлено: 27 Мая, 2014 - 06:38:38
Post Id


Новичок


Покинул форум
Сообщений всего: 25
Дата рег-ции: Май 2014  


Помог: 0 раз(а)




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


я могу просто создать массив. но с этим не сталкивался. на простом примере покажите плиз.
 
 Top
Страниц (2): « 1 [2]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB