iterator 标签的 value 属性如果是一个基本数据类型的数组,怎么直接访问元素?比如我有一个整数数组,想根据当每个元素的值是否等于某个值来控制输出:<s:set var="v1" value="new int[]{4, 2, 9, 6}" />
<s:iterator value="v1">
<s:if test="#this == 9">AAA</s:if>
<s:else><s:property /></s:else>
</s:iterator>也就是当迭代中的元素值为9时,显示AAA,否则显示元素的值

解决方案 »

  1.   

    试试
    <s:set var="v1" value="new int[]{4, 2, 9, 6}" />
    <s:iterator value="v1" id='arr'>
    <s:if test="#v1[arr.index] == 9">AAA</s:if>
    <s:else><s:property /></s:else>
    </s:iterator>
      

  2.   

    不行的话再试试
    <s:set var="v1" value="new int[]{4, 2, 9, 6}" />
    <s:iterator value="v1" status='arr'>
    <s:if test="#v1[#arr.index] == 9">AAA</s:if>
    <s:else><s:property /></s:else>
    </s:iterator>
      

  3.   

    试试:
    <s:iterator value="{1, 2, 3}"  var="x">
       <s:if test="#x== 9">AAA</s:if>
       <s:else>
          <s:property value="#x"/>
       </s:else>
    </s:iterator>
      

  4.   

    <s:set var="v1" value="new int[]{4, 2, 9, 6}" />
    <s:iterator value="v1" var="vs">
    <s:if test="%{#vs == 9}">AAA</s:if>
    <s:else><s:property value="#vs"/></s:else>
    </s:iterator>