【发布时间】:2011-01-03 20:49:58
【问题描述】:
我有一个带有以下代码的 Struts 2 jsp...
<s:iterator value="categories" id="category" status="iteratorStatus">
<s:if test='#category == "M" '> snip </s:if>
问题是类别后面的java代码是..
private static final CategoryEnum[] PRIVATE_VALUES = {A,B,C,M };
public static final List<CategoryEnum> VALUES = Collections.unmodifiableList(Arrays.asList(PRIVATE_VALUES));
public List<CategoryEnum> getCategories() {
return CategoryEnum.VALUES;
}
所以 IF 语句不起作用,它永远不会评估为真。 我试过转义字符等,但没有成功。
我更愿意使用 'category' 值回调 Action 类,并让其决定要做什么。例如
<s:if test='renderCategory(#category)> snip </s:if>
但我不知道如何将#category 传递回操作。
那么任何人都可以帮助我弄清楚如何将值传回或使 Struts IF 标记与枚举一起工作。
我已经读过这个:这在这里没有多大帮助,但我还是会参考一下:
Struts 2: Why won't the 'if' tag evaluate a one char string
谁能帮帮我?
杰夫·波特
【问题讨论】: