1

次のコードを使用します。しかし、それは常にそうでない状態になります。値を確認したところ、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> 0アイテムの場合、表示タグに「-」として表示されます。最初の条件チェックで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>
4

3 に答える 3

2

この方法を試してください:${itemList.pCount>0}

于 2012-10-11T02:59:52.213 に答える
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>
于 2012-10-11T02:18:10.963 に答える
0

変数だと思いますpCount = null。確認してみてください${not empty pCount and pCount>0}

于 2012-10-11T02:20:51.763 に答える