javascript - 如何将 jQuery Validation 插件与表单级服务器端验证一起使用?

标签 javascript jquery validation jquery-validate

在表单通过初始客户端验证后返回的服务器端验证错误触发元素错误的最佳方法是什么?

$("#contact_form").validate({
  submitHandler: function(form) {
    $.ajax({
      type: 'POST',
      dataType: 'json',
      url: '/contact/send',
      data: $(form).serialize(),
      success: function(response) {
        if(response.error) { //server came back with validation issues
          var fields = response.fields;
          for(var i=0, var len = fields.length; i < len; i++) {
            var field_name = fields[i].name;
            var field_error = fields[i].error;

            // TRIGGER ERROR ON AFFECTED ELEMENT

          }
          return false;
        }
        //everything went ok, so let's show a thanks message
        showThanks();
      }
    }
});

我在想:

$(form).find("[name='" + field_name + "']").triggerError(field_error);

但我没有看到任何以这种方式手动触发错误的 api 方法。

最佳答案

我想我是从 Validator/showErrors 的文档中弄明白的

var validator = $("#contact_form").validate();
validator.showErrors({"state": "Bad state."});

关于javascript - 如何将 jQuery Validation 插件与表单级服务器端验证一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6999961/

相关文章:

javascript - RxJS 与最后一个比较并发出

javascript - AJAX 第二次调用不起作用

java - 使用 xml 进行 struts 验证

angularjs - 输入文本的字符数限制

PHP 检查正在注册的电子邮件域是一个 'school.edu' 地址

javascript - 我怎样才能加入两个段落以内联显示而不移动对齐的文本?

javascript - 前端开发 Mithril.js

javascript - 为什么我总是无法通过 javascript 对复选框进行复选标记?

javascript - HTML 在提交时发布特定值

javascript - 将城市名称从 php 传递到 js(第 2 部分)