我希望通过将JSF表达式语言函数作为参数传递给javascript函数来点击命令按钮来执行javascript函数。我的命令按钮如下所示
<h:commandButton id="cmdBtn" value="GO" action="#{workSpaceBean.submit}" onclick="checkOption(#{workSpaceBean.submit()})" />
由于无法解析表达式,我收到错误。请您告诉我正确的方法。如果不可能,可以在JSF页面中传递和存储从托管bean的方法返回的值使用它作为js函数的参数。
答案 0 :(得分:1)
如果要将变量从backing bean传递给javascript方法,
在beacking bean中创建一个变量,比如myVariable
(添加getter方法)
将a4j:support
添加到按钮,如下所示,
<h:commandButton action="#{workSpaceBean.submit}"......>
<a4j:support event="click" onComplete="checkOption('#{workSpaceBean.myVariable}')" />
</h;commandButton>
答案 1 :(得分:0)
根据您对自己问题的评论,我认为您希望在return false;
onclick
中使用return false;
,action
会阻止您<h:commandButton id="cmdBtn" value="GO" action="#{workSpaceBean.submit}" onclick="return checkOption();" />
被调用
checkOption
在您的false
中,您必须在支票失败时返回{{1}}(或无论您的条件是什么)