如何使用Struts2标签和OGNL比较两个字符串?

我正在尝试比较两个值:一个来自会话,另一个来自迭代器

<s:iterator value="themes" status="currentRecord"> 

<s:if test="%{usertheme}) == %{themeName}">

<td align="center" bgcolor="red">

</s:if>

<s:else>

<td align="center" bgcolor="green">

</s:else>

</s:iterator>

但是我无法比较我的价值观,请您能告诉我我在哪里犯错误吗?

回答:

%{} (如有必要)应放在所有语句周围,而不是放在中间。

对于字符串,你应该使用.equals.equalsIgnoreCase.contains.indexOf等…不是==

更改为此:

<s:iterator value="themes" status="currentRecord"> 

<s:if test="%{#session.usertheme.equalsIgnoreCase(themeName)}">

<td align="center" bgcolor="red">

</s:if>

<s:else>

<td align="center" bgcolor="yellow">

</s:else>

....

这也可以:

   <s:if test="#session.usertheme.equalsIgnoreCase(themeName)">

以上是 如何使用Struts2标签和OGNL比较两个字符串? 的全部内容, 来源链接: utcz.com/qa/405028.html

回到顶部