參數正在設置,我需要檢查它是否是一個數字。如果不是,我需要將它的值更改爲1.如何檢測jsp中的變量類型?
<c:if test="${param.pageOffset TEST HERE}">
<c:set target="param" property="pageOffset" value="1" />
</c:if>
我對jsp非常陌生,所以我可能完全處於錯誤的軌道上。任何幫助將非常感激!
參數正在設置,我需要檢查它是否是一個數字。如果不是,我需要將它的值更改爲1.如何檢測jsp中的變量類型?
<c:if test="${param.pageOffset TEST HERE}">
<c:set target="param" property="pageOffset" value="1" />
</c:if>
我對jsp非常陌生,所以我可能完全處於錯誤的軌道上。任何幫助將非常感激!
如果可能的話,最好在Java代碼中執行這種類型的處理,並將結果發送到JSP。
我不知道是否有辦法做到這一點使用純JSTL,但如果你決定把這個操作在JSP你可以只使用一個scriptlet
自動型強制是主功能EL/JSTL
。這意味着他們定義了適當的轉換和默認值。
您可以試試<c:catch>
JSTL標籤來測試值是否爲數字或不。
<c:set var="num" value="1"/>
<c:catch var="coerError">
<c:set value="num" value="${num*1}" />
</c:catch>
<c:if test="${not empty coerError}">
</c:if>
這不是JSP驗證請求參數的工作。在動作/ servlet中執行此操作,並將適當的pageOffset值存儲爲請求屬性。 – 2012-07-11 10:48:12
你說得對,我已經仔細研究過它並找到了Java控制器類。我會改變它。 – 2012-07-11 11:08:23