我有一个<h:commandButton>
提交表单的<f:ajax>
。
<h:commandButton value="Create Project" styleClass="greyishBtn submitForm">
<f:ajax execute="@form" listener="#{projectController.create}"
render=":tblProject" />
</h:commandButton>
它可以正常工作,但是当我尝试添加onevent
以下属性时:
<f:ajax execute="@form" listener="#{projectController.create}"
onevent="createProjectEventHandler" render=":tblProject" />
使用已包含的此 JavaScript:
function createProjectEventHandler(data){
console.log('sth happened');
}
并单击按钮,然后它只是重新加载页面。我没有看到任何内容已提交回托管 bean,控制台上也没有任何内容。
这是如何引起的,我该如何解决?
更新:它适用于以下方法:
<f:ajax execute="@form" listener="#{projectController.create}"
onevent="function(data) {console.log('aaa');}" render=":tblProject" />
为什么呢?根据有关f:ajax events 的 Java EE 6 教程,该onevent
属性应支持 JavaScript 函数名称。