在PrimeFaces 5.1中,我使用命令
显示dataTable学生科目<p:dataTable id="student" var="stud" value="#{stud.details}">
<p:column headerText="studentName">
....
</p:column>
<p:column headerText="subject">
<c:forEach begin="1" items="#{stud.typeNameList}" varStatus="selectedSTypeIndex" var="text">
<ui:fragment rendered="${dept.sstTypeSelected[selectedTypeIndex.index] eq true}">
<h:outputLabel value=","/>
<h:outputLabel value="#{text}"/>
</ui:fragment>
</c:forEach>
</p:column>
</p:daTable>
示例:
studentName subject
Senthil ,Tamil,English,Maths,Science
我的疑问是如何使用JSF或任何其他方式删除泰米尔语主题之前的逗号?
答案 0 :(得分:0)
使用<c:choose>
制定if elseif else ..
条件,
这里更新了代码:
<p:dataTable id="student" var="stud" value="#stud.details}">
<p:column headerText="studentName">
....
</p:column>
<p:column headerText="subject">
<c:forEach begin="1" items="#{stud.typeNameList}" arStatus="selectedSTypeIndex" var="text">
<ui:fragment rendered="${dept.sstTypeSelected[selectedTypeIndex.index] eq true}">
<c:choose>
<c:when test="${selectedSTypeIndex.first}">
<!--if first element, do nothing -->
</c:when>
<c:otherwise>
<c:choose>
<c:when test="${dept.sstTypeSelected[selectedTypeIndex.index-1] eq false}">
<!--if last elemnt wasn't rendererd so do nothing -->
</c:when>
<c:otherwise>
<h:outputLabel value=","/>
</c:otherwise>
</c:choose>
</c:otherwise>
</c:choose>
<h:outputLabel value="#{text}"/>
</ui:fragment>
</c:forEach>
</p:column>
</p:daTable>