我有一个outputText
字段,我在rendered
属性中写了一个条件。条件是将字符串的长度与某个数值进行比较。
<h:outputText id="emailaddress"
value ="#{subsAlertsHelper.personEmail.substring(0,20)}"
rendered="#{subsAlertsHelper.personEmail.length() >20}" />
如果我在==
中使用!=
或rendered
,则表示正常。但是对于greaterthan和lessthan来说,它没有给出输出。可能是什么原因?
答案 0 :(得分:47)
您必须使用gt
和lt
运营商。
从Sun / Oracle查看JavaServer Faces Expression Language Intro。正是运营商部分。
答案 1 :(得分:3)
rendered
只接受EL表达。
subsAlertsHelper.personEmail.length()
不正确。
在personEmail对象上,添加方法getLength()
,返回长度
public int getLength(){ return this. length();}
修改:
rendered="#{subsAlertsHelper.personEmail.length >20}"