2015-11-18 26 views
0

我有一种情况,在执行其他xforms:send之前正在检查来自Web服务(身份验证)的响应。我遇到的问题是xforms-submit-done对于表单提交和身份验证都会触发。XFORMS:正在触发多个xforms-submit-done事件

下面的代码给出:

<xf:action ev:event="xforms-submit-done" ev:observer="Authenticate-submission" context="instance('fr-service-response-instance')"> 
    <xf:action if="contains(//AuthenticateReturn,'true')"> 
     <!-- If correctly Authenticated, then continue with the form submission --> 
     <xf:send submission="SubmitForm-submission"/> 
     <xf:action ev:event="xforms-submit" ev:observer="SubmitForm-submission" /> 
     <!-- Response actions --> 
     <xf:action ev:event="xforms-submit-done" ev:observer="SubmitForm-submission" context="instance('fr-service-response-instance')"> 
      <!-- This section is entered twice, once for the Authenticate-submission andonce for the SubmitForm-submission --> 
      <xf:message level="modal">Submission complete</xf:message>  
     </xf:action> 
    </xf:action> 
</xf:action> 

我如何修改我的代码,以确保SUCESSFUL提交SubmitForm提交后才能显示的消息,并没有给身份验证提交?

TIA 彼得

回答

0

修正,通过改变ev.observer在以ev.target的XForms提交 - 做处理。