如何有条件地调用JSF EL中的Javascript函数?

时间:2010-04-06 12:40:02

标签: java javascript jsf

我必须根据bean值调用JavaScript函数。我使用以下代码

onmouseover="#{occasionBean.user.userPreference.defaultPreview==true?'':'Tip()'})"

我需要像Tip这样在

中发送一些参数
Tip('<img src="pics/image.jpg" width="60">')
  

我得到的错误是javax.servlet.jsp.JspException:javax.faces.el.E​​valuationException:com.sun.faces.el.impl.parser.ParseException:在第1行第60列遇到“test”。   期待以下之一:       “}”......       “” ...       “&gt;” 中...       “gt”......       “&LT;” ...       “lt”......       “==”......       “eq”......       “&lt; =”......       “le”......       “&gt; =”......       “ge”......       “!=”......       “ne”......       “[”......       “+”......       “ - ”......       “*”......       “/”......       “div”......       “%”......       “mod”......       “和”......       “&安培;&安培;” ...       “要么” ...       “||” ...       “?” ...       “

1 个答案:

答案 0 :(得分:2)

首先,摆脱最后的右括号:

onmouseover="#{occasionBean.user.userPreference.defaultPreview==true?'':'Tip()'}"

然后我建议不要将HTML结构作为参数传递。你最好使用类似的东西:

Tip(\'img\', \'pics/image.jpg\', 60)

并在Tip方法中构造html,可能会因不同类型的提示而重载。