JSF El表达式删除不必要的逗号

时间:2016-02-10 08:33:12

标签: jsf primefaces jstl

在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或任何其他方式删除泰米尔语主题之前的逗号?

1 个答案:

答案 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>