gpt4 book ai didi

java - JSF 富 :dataList rendered per row?

转载 作者:行者123 更新时间:2023-11-30 12:00:09 27 4
gpt4 key购买 nike

看起来这应该是可能的,但是......?

使用 richfaces 和 JSF,我正在使用 rich:dataList 遍历 List ...一切都很好,除了我希望能够选择性地“呈现”每次迭代,这可能吗?

例如:

<rich:dataList value="#{list}" var="item">
<h:outputText value="#{item.something}" />
</rich:dataList>

我希望能够有选择地呈现输出,例如,如果“item”的某些属性为真或其他。

我试过包装 outputTextoutputPanel和类似但如果输出面板未呈现 '<li> ' 的迭代仍然呈现,所以你得到一个没有任何东西的项目符号点,而不是它只是完全跳过项目:(

有什么方法可以解决这个问题还是我 SOL?我通常意识到我希望事先准备好要显示的项目列表,但出于多种原因,我不想在这里重复,这是不可能的。

最佳答案

奇怪的行为。我试图用 Tomahawk's 重现它 t:dataList 我看到了完全相同的行为!最好的办法是将其替换为 a4j:repeat 并呈现纯 HTML <li>手动元素。像这样的东西:

<ul class="rich-datalist">
<a4j:repeat value="#{list}" var="item">
<h:panelGroup rendered="#{item.somecondition}">
<li class="rich-list-item">
<h:outputText value="#{item.something}" />
</li>
</h:panelGroup>
</a4j:repeat>
</ul>

(我从 rich:dataList 中借用了与 here 中描述的相同的类名,以便保留皮肤)

不过,我个人会将其标记为错误或至少是不受欢迎的行为,并将其报告给有问题的组件库背后的人。 I've already done it for Tomahawk .

关于java - JSF 富 :dataList rendered per row?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2178295/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com