missionStatus是任务状态  有3个值 分别是0,1,2
数据库中的类型是Long<s:if test="missionStatus.status == 0">未查看</s:if><s:elseif test="missionStatus.status == 1">已查看</s:elseif><s:else>已删除</s:else>判断在页面显示什么
正确是未查看
已查看
已删除现在是已删除
已删除
已删除求指教怎么修改

解决方案 »

  1.   

    应该还是标签的问题吧,很久没用Struts了,忘了。。把0 ,1加个单引号试试,你确定S标签是用==吗?不是=吗?很久了,很久了,真的忘了哦。。
      

  2.   

    missionStatus.status == 0 看是不是要改成missionStatus.status == 0L  数据库中三个状态用byte或者short就可以了吧
      

  3.   

    我也遇到过,忘了是什么原因了。那就最后个也判断试一下elseif。。问题就是else
      

  4.   

    missionStatus.status 这个是什么东东?
    是不是该这样:
    <s:if test="#request.missionStatus.status == 0">
    或者
    <s:iterator value="#request." id="missionStatus">
       <s:if test="#missionStatus.status==0"
      

  5.   

    <s:if test="${missionStatus.status} == 0">未查看</s:if><s:elseif test="${missionStatus.status} == 1">已查看</s:elseif><s:else>已删除</s:else>
    EL表达式这样应该可以了,如果还不行的话就在0,1加上‘’吧
      

  6.   

    missionStatus是什么?在哪儿定义的?
      

  7.   

    lz这样判断 要确定:missionStatus 在struts action类中有getter/setter方法的。不然,判断总是不成立的。
      

  8.   

    问题解决了吗?同样的问题啊,我用<s:property 可以获到值,但<s:if test="{#menuType.funcType == '1'}">就是不行!
      

  9.   

    首先确定你是否missionStatus.status是否有值,是否为 0 1 2
    你现在的结果显示 说明你的missionStatus.status取值有问题
      

  10.   

    <c:if test="${msg eq '0'}">已查看</c:if>
    <c:if test="${msg eq '1'}">已删除</c:if>
    或者改为
    <c:choose>
       <c:when test="${msg eq '0'}">已查看</c:when >
       <c:when test="${msg eq '1'}">已删除</c:when >
       <c:otherwide>未删除</c:otherwide>
    </c:choose>
    也是一样啊
      

  11.   


    <s:if test="%{#menuType.funcType == '0'}">
    XXX0
    </s:if>
    <s:elseif test="%{#menuType.funcType == '1'}">
    XXX1
    </s:elseif>
    <s:else>
    XXX2
    </s:else>
      

  12.   

    用 = 或者eq  struts标签也支持eq的  不等用 en
      

  13.   

    那是因为你上页面中有多个对像都有status属性,写成这样试试,<s:if test="#missionStatus.status == 0">
      

  14.   

     <%request.setAttribute("statu",3); %>
        <s:set name="score" value="2"/>
     
                <s:if test="%{#request.statu==1}">
                    <table border="1" bgcolor="yellow">
                 </s:if>   
                  <s:elseif test="%{#request.statu==2}">
                    <table border="1" bgcolor="cyan">
                 </s:elseif> 
                   <s:else>
                       <table border="1" bgcolor="red">
                         </s:else>
                       
                       <tr background="red"> 
                         <td>发的  </td>
                      </tr> <tr>
                         <td> 方法 </td>
                      </tr>
                    </table>
      

  15.   

    <s:if test="missionStatus.status == 0">未查看</s:if>
    <s:if test="missionStatus.status == 1">已查看</s:if>
    <s:if test="missionStatus.status == 2">已删除</s:if>这样 因为你每条数据只会有一个值  也就是说只会有一个if生效。
      

  16.   

    刚才上面的写错了  按着下面的来一定没问题。
    <s:if test="${missionStatus.status == 0}">未查看</s:if>
    <s:if test="${missionStatus.status == 1}">已查看</s:if>
    <s:if test="${missionStatus.status == 2}">已删除</s:if>