[英]How to store a character using JSTL <c:set>
我想使用JSTL在變量中存儲字符值
我的代碼是:
<c:set var="letter" value='${param.colorLetter.toLowerCase().charAt(0)}' ></c:set>
接下來我需要嘗試檢查角色是否為'v':
<c:choose>
<c:when test="${letter}=='v'">
<lable>Color Name: </lable>Violet<br/>
</c:when>
</c:choose>
目前我覺得它不是將它存儲為字符變量,所以測試失敗了。 (沒有錯誤/例外)
<c:set var="letter" value="${param.colorLetter.toLowerCase().charAt(0).toString()}" />
<c:choose>
<c:when test="${letter eq 'v'}">
<lable>Color Name: </lable>Violet<br/>
</c:when>
</c:choose>
您必須將整個測試放在${}
之間,並在charAt(0)
之后添加toString()
charAt(0)
以從Character
為String
。
為了防止這對其他人有用,我能夠通過使用“sp00m”建議來解決這個問題。
<c:set var="letter" value='${param.colorLetter.toLowerCase().charAt(0).toString()}' ></c:set>
表達式語言將其存儲為一個字符,然后評估它必須涉及比較ascii值。 上面的方法將Character轉換為String,然后將其存儲在“letter”變量中。 那么這只是簡單的String比較的問題:
<c:when test='${letter=="v"}'>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.