我有一个网站,其中显示了一些列表。 现在,列表显示在两列中,即使只有2或3个列表元素(看起来很愚蠢),但我希望只显示在一列中。
有没有办法用>添加if-else语句?和<经营者?
这就是我所做的,但不起作用:
<ui:if value="#{graphicDynamic.elements.size < 3}" var="hotspots" >
...do the one column thing...
</ui:if>
<ui:else>
..do the other thing...
</ui:else>
答案 0 :(得分:1)
下面的内容不会更简单吗
<!-- Has more then 3 elements - display hotspots in two columns -->
<h:outputLabel rendered="#{bean.value ge 3}" >
Render the site elements for this case
</h:outputLabel>
<!-- Has less then or 3 elements - display hotspots in one column -->
<h:outputLabel rendered="#{bean.value le 3}" >
Render the site elements for this case
</h:outputLabel>
答案 1 :(得分:0)
有一个解决方案,也许它有时会对某人有所帮助......无论如何,这是我的解决方案:
<!-- Has more then 3 elements - display hotspots in two columns -->
<h:outputLabel rendered="#{SomeClass.hasMoreThanThree}" >
Render the site elements for this case
</h:outputLabel>
<!-- Has less then or 3 elements - display hotspots in one column -->
<h:outputLabel rendered="#{not SomeClass.hasMoreThanThree}" >
Render the site elements for this case
</h:outputLabel>
在控制器中:
public class SomeClass implements Serializable {
private boolean hasMoreThanThree;
public SomeMethod(SomeType someParameter) {
...some code...
setHasMoreThanThree(someList.size());
...some more code..
}
public boolean getHasMoreThanThree() {
return hasMoreThanThree;
}
public void setHasMoreThanThree(int size) {
if (size >= 3){
this.hasMoreThanThree=true;
}
}