Struts2如果条件使用字符串列表

时间:2015-01-12 20:33:46

标签: java struts2

我有一个名为matrixList的数组列表,我正在迭代。我想显示不同的值,如果getStatus()方法的返回值等于值" GREEN"由于某种原因,我得到了错误 "对于方法等于"

,target为null
<s:iterator status="stat" value="matrixList">
  <tr>
    <s:if test="%{#status.equals('GREEN')}">
      THIS IS green
    </s:if>

    <td class="R0C1"><s:property value="status"/></td>
    <td class="R0C1"><s:property value="releaseTarget"/></td>
  </tr>
</s:iterator>

知道我错过了什么吗?

2 个答案:

答案 0 :(得分:2)

如果#在值堆栈上(而不是堆栈上下文中的命名值),则忽略status

<s:if test="%{status.equals('GREEN')}">

如果<s:property value="status"/>有效,为什么在<s:if>代码中以不同方式引用它?

答案 1 :(得分:0)

if语句中使用的属性名称应为stat而不是status

<s:if test="%{#stat.equals('GREEN')}">

这是因为迭代范围中变量的名称在stat语句中定义为status = "stat"