首页 > 解决方案 > Parsley 自定义验证器 (Ajax) 不会触发

问题描述

使用 Parsley JS 2.9.2 我需要通过 RegEx 以及使用应该进行 AJAX 调用以检查用户名是否可用的自定义验证器来验证输入字段。根据我在文档中阅读的内容以及在网络上的研究,我下面的代码应该至少可以用于获取数据(我在 ASP 中的 JSON 可能需要一些工作)但我无法让代码运行,我明白了Chrome 控制台选项卡或网络选项卡中没有反馈.. 那么我在这里做错了什么?..还有一个小问题,如何设置“用户名已存在”的自定义消息?

我拥有的代码:

$(document).ready(function() {

  $('#initials').parsley();

  window.Parsley.addValidator('username', {
    validateString: function(value) {
      return $.ajax({
        url: 'check_initials_availability.asp',
        method: "POST",
        data: {
          initials: value
        },
        dataType: "json",
        success: function(data) {
          return true;
        }
      });
    }
  });

});
<input style="width: 70px; text-transform: uppercase;" class="maxLength form-control" type="text" name="initials" id="initials" data-parsley-pattern="^[a-zA-Z0-9]*" data-parsley-errors-container="#initials-errors" data-parsley-trigger="focusout" maxlength="10"
  minlength="3" Required>

标签: ajaxparsley.js

解决方案


推荐阅读