0

是否可以减少这个表达式:

expanded="#{bean.item == 'item1' or bean.item == 'item2' or bean.item == 'item3'}"

类似于

bean.item == {'item1', 'item2', 'item3'}

在EL?

4

1 回答 1

1

不,你可以做的最接近的事情是创建一个自定义 EL 函数,例如

expanded="#{my:isOneOf(bean.item, 'item1', 'item2', 'item3')}"

但是由于 EL 函数不支持可变参数,因此您需要为所需的每一个参数创建一个新方法。另一种方法是为分隔字符串提供显式(并记录!)支持,例如逗号分隔:

expanded="#{my:isOneOf(bean.item, 'item1,item2,item3')}"
于 2012-06-24T12:03:11.747 回答