我在JSP上遍历一个数组,从网上找到了这个例子
<s:iterator value="resultData" status="stuts">
      <tr>
        <s:iterator value="resultData[#stuts.index]" >
        <td height="30px">
          <s:property/>
        </td>
        </s:iterator>
      </tr>
</s:iterator> 
这个遍历是没问题的,能够正确的显示数组的每个元素值。如果我要判断数组的元素的正负,负的话,就用红色表示。
<s:if test="<s:property/> lt 0">
 ....
<s:/if>
<s:else>
...
</s:else>好像不对。不知道该怎么写

解决方案 »

  1.   

    --PS:这个遍历是没问题的,能够正确的显示数组的每个元素值。 如果我要判断数组的元素的正负,负的话,就用红色表示。 正的话
    就直接输出负的话,就用红色表示。 <a style="color: red;">值redvalue</a>
    没什么啊
      

  2.   

    lz这个就是按你想的那样显示,你遍历的时候没有错误,那就没有什么问题,只是在显示之前再判断一下是正还是负,用<s:if>和<s:else>嵌套在<s:iterator>里面判断一下就行~
      

  3.   

    TO xnjnmn
    我现在的问题是判断正负的逻辑
    <s:if>的test不知道怎么写
      

  4.   

    <%
    int[] results = {10, 20, -1,-5};
    request.setAttribute("results", results);
     %>
     <s:iterator value="#request.results" var="result">
      <s:if test="#result lt 0">
      <font color=red><s:property/><br></font>
      </s:if>
      <s:else>
      <s:property/><br>
      </s:else>
     </s:iterator>
      

  5.   


    <s:iterator value="resultData" status="stuts"> 
          <tr> 
            <s:iterator value="resultData[#stuts.index]" value="oneResult" > 
               <s:if test="oneResult<0">
                  <td style="color:red"><s:property value="oneResult"/></td>
               </s:if>
               <s:else>
                   <td><s:property value="oneResult"/></td>
               </s:else>
            </s:iterator> 
          </tr> 
    </s:iterator> 
      

  6.   

      LZ
      给你点代码参考
       
          <s:iterator id="secu" value="#request.securitiesList">
    <td width="100" align="center" bgcolor="#FFFFFF">
            <s:if test="#secu.getway==1"><font color="red">自己申领</font></s:if>
            <s:if test="#secu.getway==0">商家发放</s:if>
    </td>
         </s:iterator>
       
      

  7.   

    <s:if test=" <s:property/> lt 0"> 
    这里的<s:property/>缺少name属性。
      

  8.   

    用el表达式是可以的
    #{value}