JSTL c:选择问题

时间:2011-06-06 12:32:45

标签: jsp jstl el

我需要使用JSTL select语句实现一个switch case,我有树不同的选择。 任何人都知道下面代码不起作用的原因吗?

提前致谢。

<c:choose>
    <c:when test="${iUserInfo.identification_card_type}==0">
        <option selected="selected">Carta di Identità</option>
        <option>Passaporto</option>
        <option>Patente di Guida</option>
    </c:when>
    <c:when test="${iUserInfo.identification_card_type}==1">
        <option>Carta di Identità</option>
        <option selected="selected">Passaporto</option>
        <option>Patente di Guida</option>
    </c:when>
    <c:when test="${iUserInfo.identification_card_type}==2">
        <option>Carta di Identità</option>
        <option>Passaporto</option>
        <option selected="selected">Patente di Guida</option>
    </c:when>
    <c:otherwise>
        <option>Scegli...</option>
        <option>Carta di Identità</option>
        <option>Passaporto</option>
        <option>Patente di Guida</option>
    </c:otherwise>
</c:choose>

2 个答案:

答案 0 :(得分:5)

因为您没有评估${}中的整个表达式。相应地修复它:

<c:when test="${iUserInfo.identification_card_type == 0}">
...
<c:when test="${iUserInfo.identification_card_type == 1}">
...
<c:when test="${iUserInfo.identification_card_type == 2}">

答案 1 :(得分:0)

侨,

我通常使用这种测试:

test="${iUserInfo.identification_card_type eq 0}"

而不是正常的比较,你应该使用jstl的那些,比如gt(大于),st(小于)和eq,这意味着等于。 继续前进,jstl和servlet他们摇滚!