如何手动触发欧芹错误

时间:2019-01-25 14:13:41

标签: parsley.js

我们有一个表单,需要通过我们的API运行更广泛的验证。如果该API验证(通过ajax调用)返回了一组无效的表单ID或名称以及错误消息,是否可以手动触发parsley 2.x错误?例如:

HTML(部分)

<label>Book Title</label>
<input type="text" name="title" id="title">

JavaScript(部分)

<script>
  var validationRequest = $.ajax({
    type: "get",
    url: "somepath",
    data: {
      method: "validateForm",
      formFields: $("#myForm").serialize()
    },
    dataType: "json"
  })
  .done( function(data) {
    // Assume data.validationErrors comes back defined as follows:
    // data.validationErrors = [{'field':'title','errorMessage':'This title has already been used'}];

    for( var i = 0; i < validationErrors.length; i++ ){
      $("#"+validationErrors[i].field).attr("data-parsley-error-message",validationErrors[i].errorMessage);
      $("#"+validationErrors[i].field).showParsleyError();
    }
  });
</script>

在此示例中,我将用什么代替showParsleyError()来触发出现Parsley错误。

此外,为澄清起见,出于以下几个原因,我想在单个ajax验证调用中将整个表单传递给API:1.我想在一次调用中验证所有字段,而不是对所有表单进行数十次调用和2。我计划使用与服务器端相同的验证,因此只需编写一次,而不要编写两次(在JS中编写一次,在我的服务器语言中编写一次)。之所以提出这一点,是因为我看过Parsley是远程的,我的理解是要设计定制验证器,这些验证器针对每个字段提出单独的Ajax请求,这与我上面提到的两个目标相反。

0 个答案:

没有答案