jQuery 验证器和使用 AJAX 的自定义规则

标签 jquery ajax validation jquery-validate

我阅读了您关于 jQuery 验证器的回复,您在其中概述了一种根据数据库中的值检查用户名的方法。

我尝试过实现此方法,但无论从 PHP 文件返回什么,我总是收到用户名已被占用的消息。

这是自定义方法...

$.validator.addMethod("uniqueUserName", function(value, element) {
  $.ajax({
      type: "POST",
       url: "php/get_save_status.php",
      data: "checkUsername="+value,
      dataType:"html",
   success: function(msg)
   {
      // if the user exists, it returns a string "true"
      if(msg == "true")
         return false;  // already exists
      return true;      // username is free to use
   }
 })}, "Username is Already Taken");

这是验证代码...

username: {
    required: true,
    uniqueUserName: true
},

有没有一种特定的方式我应该从 php 返回消息。

谢谢

一个

最佳答案

对于任何其他偶然发现此问题的人,验证支持“远程”方法,该方法在 2010 年可能不存在:

https://jqueryvalidation.org/remote-method/

$("#myform").validate({
  rules: {
    email: {
      required: true,
      email: true,
      remote: {
        url: "check-email.php",
        type: "post",
        data: {
          username: function() {
            return $("#username").val();
          }
        }
      }
    }
  }
});

关于jQuery 验证器和使用 AJAX 的自定义规则,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2628413/

相关文章:

jquery - 从 CDN 加载 JQuery 和 JQuery UI 等资源

php - JQuery colorbox 不适用于 PHP/MySQL

javascript - 防止链接重定向到另一个页面

php - 我在 AJAX 中遇到问题

java - 如何验证 PAN 卡?

php - 如果用户在数据库中有有效的 ID,我该如何注册用户?

javascript - 使用 javascript 验证包含缩短版本的 YouTube 网址

jquery - 元素在窗口加载时未正确调整大小

javascript - 在 AJAX 调用中返回 AJAX

javascript - 如何在一定时间后删除 HTML 附加内容