簡體   English   中英

通過設置和檢查jstl變量是否為空

[英]check if jstl variable is empty by set and out

嘿,我要檢查jstl變量是否為空,並進行設置。

使用set創建了一個變量:

<c:set var="prevValue" value="" />

我使用out方法檢查jstl變量是否為空:

<c:when test="<c:out value='${empty prevValue}' />" />
empty
</c:when>
<c:otherwise>
not empty
</c:otherwise>

但我收到的不是空的。 為什么會這樣呢? 我確實將prevValue設置為空字符串,所以從技術上講這是正確的嗎?

該代碼將字符串文字放入c:when標記的test屬性中,該屬性需要一個布爾值。 簡化測試表達式以僅檢查prevValue是否為空,該代碼不應在測試中包含<c:out ...段。 采用:

<c:when test="${empty prevValue}" />

另外,如果要繼續使用<c:when>則必須將條件包裝在<c:choose>

一個完整的例子:

<c:choose>
    <c:when test="${empty prevValue}" />
        empty
    </c:when>
    <c:otherwise>
        not empty
    </c:otherwise>
</c:choose>

您已經有一個有效的答案,

但是為什么不簡單呢?

<c:if test="${not empty prevValue}">

//not empty 

</c:if>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM