如何在显示标签中给出c:if标签

时间:2012-05-30 10:53:36

标签: jstl displaytag

我的jsp文件中有一个显示标记。就像..

<display:table id="currentRow" name="${ListObj}" requestURI="" sort="page" defaultsort="2"
                    pagesize="5" class="displayTable">
            <display:caption><font color="red">Users List</font></display:caption>

            <display:column property="ID" title="Role" ></display:column>
            <display:column property="Name" title="User Name" sortable="true"></display:column>

            <c:if test="%{currentRow.ID ne '1'}">
                <display:column >
                    <a href="javascript:editUserJS('editUser.jav?id=${currentRow.ID}');"><i>edit</i></a>
                </display:column>

            </c:if> 

        </display:table>

我编写了代码<c:if test="%{currentRow.ID ne '1'}">,因为我不想显示ID为1的用户的编辑链接。但是这个条件不起作用。即,显示标签中没有行显示编辑链接。但如果我提供<c:if test="%{currentRow.ID eq '1'}">,则会显示编辑链接。

如何显示除ID = 1 ???

之外的所有行

1 个答案:

答案 0 :(得分:2)

您应该将if语句放在<display:column>标记内,因为即使它是空的,您也总是希望在表中呈现<td>标记。

<display:column >
    <c:if test="%{currentRow.ID ne 1}">
        <a href="javascript:editUserJS('editUser.jav?id=${currentRow.ID}');"><i>edit</i></a>
    </c:if>
</display:column>

如果id属性是一个整数,你将希望以int为单位执行等号。