使用JSF和Page Submit Refresh进行JQuery Validation()

时间:2015-10-01 00:03:11

标签: javascript jquery validation jsf

我刚刚完成了将JQuery Validation脚本与我的JSF 2页面集成。它工作正常,直到我们提交表格。

我找到了非常接近的答案here,但问题仍然存在:页面被刷新并且bean没有被调用!此answer也很有用,但使用它时,bean也不会被调用。

这是我的验证:

<script>
$(document).ready(function(){

$("#ForgotPass").validate({

    rules: {
        'ForgotPass:mailprofile': {
            email: true,
            required : true
            }
        },
        messages: {
            'ForgotPass:mailprofile': {
         email: "Veuillez entrer une adresse e-mail valide",
         required : "L'adresse e-mail est vide"
            }
          }

    });
});
</script>

形式:

<h:form id="ForgotPass" class="form floating-label">
  <h:outputText id="Mailid" value="E-mail : " name="Mailnm"> </h:outputText>
  <h:inputText class="form-control" id="mailprofile" value="#{userloginMB.mailprofile}" ></h:inputText>
  <h:outputLabel id="MailidL" for="mailprofile" name="MailnmL"></h:outputLabel>
  <h:commandButton id="btnPo" value="Soumettre" onclick="validate()">
    <f:ajax listener="#{userloginMB.forgotpass}" execute="@form" render="@form" onevent="validate()" />
  </h:commandButton>                                            
</h:form>

如果验证正确,如何提交表单,调用bean,没有页面刷新?当字段无效时,验证正常工作。

注意:我在浏览器按钮中呈现:

<input id="ForgotPass:btnPo" name="ForgotPass:btnPo" value="Soumettre" class="btn btn-flat btn-primary ink-reaction" onclick="mojarra.ab(this,event,'action','@form','@form');return false" type="submit">

已添加:类似于完美的事情:http://jsfiddle.net/wYd5t/2/但我怎么能在我的例子中做到这一点? (甚至使用addEventListener)

1 个答案:

答案 0 :(得分:1)

你应该真正进行双重验证,服务器端(通常是简单的消息重组错误)和客户端错误。如果另一个停止(JS禁用浏览器),那么在两者之间进行连接会使两者都无法使用。