验证后如何激活功能?

时间:2013-06-24 10:22:48

标签: jquery validation

这是我对email_address的验证

$().ready(function() {
$('#email_settings').validate({
rules: {
    email_address: { required:true, email:true, minlength:7 }
}
});
});

在提交页面

之前,我需要在上述验证后调用以下查询
$.post('../get_email_availability.php',
    {eml_ad:$('#email_address').val()},
    function(data){
    if (data=='available'){}
    else{}
    });

2 个答案:

答案 0 :(得分:0)

你可以尝试:

if($('#email_settings').valid())
{
   $.post(...);
}
else return false;

答案 1 :(得分:0)

我已经实现了这个类似的功能。 我用“addMethod”函数来实现这个功能: jQuery.validator.addMethod(name,method[,message])

它可以添加自定义验证方法。在这种情况下,我们需要一个“电子邮件可用性”检查器,它将检查带有数据库的电子邮件。

你可以试试这个:

$.validator.addMethod("checkEmailUsed",function(value,element){
  var result=$.ajax({
      url:"../get_email_availability.php",
      type:"POST",
      async:false,
      data: "eml_ad="+$('#email_address').val()
  }).responseText;
  if(result==="available"){ 
    return true //can be used
  }else{ 
    return false;
  }
},"E-mail is not available.");

并且不要忘记将此自定义vaildation方法添加到电子邮件验证规则。

$('#email_settings').validate({
  rules: {
    email_address: { required:true, email:true, minlength:7, checkEmailUsed: true }
  }
});

我希望这会对你有所帮助