f:在监听器之前调用ajax onerror

cas*_*orz 1 javascript ajax jsf jsf-2 mojarra

我有一个简单的表单和一个非常简单的bean来监听ajax事件.以下是一些代码:

<script type="text/javascript">
    function myfunction() {
         alert('error');
    }
</script>
<h:commandButton  id="someid" value="somevalue" >
   <f:ajax event="click" execute="someids" listener="#{MyBean.fireEvent}" onerror="myfunction()"  />    
</h:commandButton>
Run Code Online (Sandbox Code Playgroud)

我在调试中使用eclipse来查看何时MyBean.fireEvent被调用,据我所知,它在onerror="myfunction()"执行后被调用.可能是什么原因?

我正在使用mojarra 2.0和Resin.

谢谢.

小智 5

看起来像格式化问题,也许尝试:

<script type="text/javascript">
  function myfunction(error) {
     alert(error.description);
  }
</script>

<h:commandButton  id="someid" value="somevalue" >
  <f:ajax event="click" 
       execute="someids" 
       listener="#{MyBean.fireEvent}" 
       onerror="myfunction" />    
</h:commandButton>
Run Code Online (Sandbox Code Playgroud)