我正在尝试比较两个值:一个来自会话,另一个来自迭代器
<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等…不是==。
.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)">