Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > facelets ui:repeat


Автор: Bandit 3.3.2009, 22:10
Доброго времени суток.

пишу код: 
Код


                                                      
  <ui:repeat value="#{managerJsfBean.topDisc}" var="disc">
                                <div class="img_item">
                                    <a href="#"><img src="resource/images/fake_images/img1.gif" alt="" class="gray_border" /></a>
                                    <a href="#" class="title">The Beach Boys</a>
                                    <a href="#" class="album">Today!</a>
                                </div>
                                    
                                <div class="row_separator">&nbsp;</div>
                            </ui:repeat>



то, что еще не использовал var="disc" дальше по коду это не страшно))
вопрос касается  второго блока <div class="row_separator">&nbsp;</div>...........
его надо выводить через каждые 3 итерации...
стандартная фраза: помогите пожалуйста... ума не прилажу как это сделать в facelets smile ... зарание спасибо!

Автор: powerOn 3.3.2009, 23:32
В целом нужно что бы disc имел некое булево свойство по которому можно определить следует ли выводить за ним что-либо или нет. С помощью атрибута rendered к примеру h:panelGroup тега уже управлять рендерингом содержимого.

Код

<ui:repeat value="#{managerJsfBean.topDisc}" var="disc">
                                <div class="img_item">
                                    <a href="#"><img src="resource/images/fake_images/img1.gif" alt="" class="gray_border" /></a>
                                    <a href="#" class="title">The Beach Boys</a>
                                    <a href="#" class="album">Today!</a>
                                </div>
                                <h:panelGroup rendered="#{disc.seporatorRendered}" >
                                    <div class="row_separator">&nbsp;</div>
                                </h:panelGroup>
                            </ui:repeat>



Автор: Bandit 3.3.2009, 23:56
Цитата

нужно что бы disc имел некое булево свойство по которому можно определить следует ли выводить за ним что-либо или нет.


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

ведь это придется прогонять коллекцию в цикле и устанавливать значение disc.seporatorRendered для каждого отдельного вида отображения.
плюс это еще одно поле в entity, разве это рационально? в любом случае спасибо за ответ, просто смотрю никто не пишет)) или время позднее smile

может есть другие варианты, а то этот уж очень стремноват для моего восприятия smile 
нету ли возможности как в jsp использовать какие-либо еще теги?

Автор: powerOn 4.3.2009, 09:22
Если ищите полную рациональность, то можете написать свой тег, аналог ui:repeat, который будет обладать нужной функциональностью. Но это куда сложнее. Не думаю, что обновление одного свойства даже для 1000 элементов займет много процессорного времени. 

Автор: Bandit 4.3.2009, 19:25
powerOn... спасибо  smile  буду иметь ввиду 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)