0

试图评估以下但似乎不起作用

  <s:set name="infoType" value='%{"info.aero.aeroType"}' />
  <s:if test='%{#infoType == "A"}'>
    <span> got it </span>
</s:if>

的返回类型aeroType是在 Java 类中设置的 String,它返回字母“A”或“B”。如果 infoType 是 A,我需要进行一些计算。如何让这个工作?


  1. 使用var而不是name因为它已被弃用

  2. 有关验证一个字符串的一般信息(您已经在翻转引号,那么这部分是正确的)

  3. 这是您真正的问题:您在<s:set value周围加上双引号;通过这种方式,您告诉 OGNL 采用该文字字符串,而不是从堆栈中读取对象;

然后改变这个

<s:set name="infoType" value='%{"info.aero.aeroType"}' />

对此

<s:set var="infoType" value="%{info.aero.aeroType}" />

它会起作用

4

1 回答 1

1
  1. 使用var而不是name因为它已被弃用

  2. 有关验证一个字符串的一般信息(您已经在翻转引号,那么这部分是正确的)

  3. 这是您真正的问题:您在<s:set value周围加上双引号;通过这种方式,您告诉 OGNL 采用该文字字符串,而不是从堆栈中读取对象;

然后改变这个

<s:set name="infoType" value='%{"info.aero.aeroType"}' />

对此

<s:set var="infoType" value="%{info.aero.aeroType}" />

它会起作用

于 2013-06-07T23:42:01.843 回答