显示标签和c选择标签

时间:2012-10-11 02:00:51

标签: jsp displaytag

我使用以下代码。但它总是走向其他条件。我检查了这些值,这些正确地从java传递给了jsp。有缺点吗?

<c:when test="${pCount > 0}">
    <display:column class="colPCount" property="pCount " title="${titlePCount}" sortable="true" headerClass="sortable" />
</c:when>
<c:otherwise>
    <display:column class="colPCount" title="${titlePCount}">&nbsp;-&nbsp;</display:column>
</c:otherwise>

对于pcount&gt; 0项,仍然在display标签中显示为“ - ”。即使我在第一个条件检查中反转检查条件,如pCount <0,显示标签也总是显示其他情况。它始终指向每个值的其他条件。

编辑:完整代码

    <display:table class="displayTable" id="itemList"
        name="${sessionScope.itemList}" requestURI="listItem.action"
        pagesize="15" defaultsort="2" defaultorder="ascending" sort="list">
        <display:column class="colItemName" property="name"
            title="${titleItemName}" sortable="true" headerClass="sortable"/>
        ...
        <c:choose>
        <c:when test="${pCount > 0}">
            <display:column class="colPCount" property="pCount " title="${titlePCount}" sortable="true" headerClass="sortable" />
        </c:when>
        <c:otherwise>
            <display:column class="colPCount" title="${titlePCount}">&nbsp;-&nbsp;</display:column>
        </c:otherwise>
        </c:choose>
    </display:table>

3 个答案:

答案 0 :(得分:2)

尝试这种方式:${itemList.pCount>0}

答案 1 :(得分:0)

我认为您可能错误地使用了显示标记库。

如果值大于零,您似乎要显示row.pCount,否则显示-。但是你实际上在做的是告诉库以不同的方式显示整个列(pCount,这可能在你引用它的范围内不存在......或者你将不得不向我们展示更多代码。)

尝试这样的事情:

<display:column class="colPCount" title="${titlePCount}" sortable="true" headerClass="sortable">
    <c:choose>
        <c:when test="${row.pCount > 0}">
            <c:out value="${row.pCount}" />
        </c:when>
        <c:otherwise>
            &nbsp;-&nbsp;
        </c:otherwise>
    </c:choose>
</display:column>

答案 2 :(得分:0)

我猜变量pCount = null。尝试检查${not empty pCount and pCount>0}