jQuery Validate + AJAX用户名可用性检查 [英] jQuery Validate + AJAX username availability check

查看:79
本文介绍了jQuery Validate + AJAX用户名可用性检查的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试为jquery验证添加用于检查登录可用性的远程方法.我读过其他问题,但这并没有帮助我... 没用我不知道哪里错了

I'm trying to add remote method for check login availability to jquery validation. I have read other questions, but it don't helped me... It's not working. I do not know where I was wrong

$('#contact-form').validate({        
    rules: {
      login: {
        required: true,     
        remote: {
            url: "user_availability.php",
            type: "post",
            data:
                  {
                      login: function()
                      {
                          return $('#contact-form :input[name="login"]').val();
                      }
                  }
        }           
      }       
    },
     messages:{
         login:{
         required: "Please enter your login.",
         remote: jQuery.validator.format("{0} is already taken.")
         }            
    }

});

user_availability.php文件:

File user_availability.php :

<?php       
    $existing_users=array('admin','mike','jason'); 

    $user_name=$_POST['user_name'];

    if (in_array($user_name, $existing_users))
    {       
        echo "false"; //already registered
    } 
    else
    {       
         echo "true";  //user name is available
    }
?>

推荐答案

这是因为在jQuery验证中,您将字段名称称为登录名",而在PHP文件中,您使用了user_name ..两者都不同.

This is because in jQuery validate you take the field name as "login", whereas in PHP file you take the user_name.. both are different.

请输入以下代码,让我知道...

Please take the following code and let me know...

<script>
$(function(){
    $('#contact-form').validate({        
    rules: {
      user_name: {
        required: true,     
        remote: {
            url: "user_availability.php",
            type: "post",
            data:
                  {
                      login: function()
                      {
                          return $('#contact-form :input[name="user_name"]').val();
                      }
                  }
        }           
      }       
    },
     messages:{
        user_name:{
         required: "Please enter your login.",
         remote: jQuery.validator.format("{0} is already taken.")
         }            
    }
});
});
</script>

这篇关于jQuery Validate + AJAX用户名可用性检查的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆