如何使用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