Validate设置onkeyup验证的实例代码,validate插件实现ajax验证重复的2种方法
分类:面向对象

jQuery validate插件实现ajax验证重复的2种方法,jqueryvalidate

本文实例讲述了jQuery validate插件实现ajax验证重复的2种方法。分享给大家供大家参考,具体如下:

jquery validate 经过这种多年的改良,已经很完善了。它能满足80%的验证需要,如果validate自带的功能,不能满足我们需求,它提供了addMethod来扩展功能。下面就举个小例子来说明一下addMethod的用法。

完整demo实例代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<title>jquery validate ajax check exist</title>
<head>
 <script type="text/javascript" src="jquery.min.js"></script>
 <script type="text/javascript" src="jquery.validate.min.js"></script>
 <script>
 $(document).ready(function(){
  jQuery.validator.addMethod("phonecheck", function(value, element) {
    string = value.match(/0(d{2,2})-(d{7,7})/ig);
    if(string != null){
      return true;
    }else{
      return false;
    }
 }, "telphone number like 021-1234567");
  jQuery.validator.addMethod("phonesame", function(value, element) {
    var flag = 1;
    $.ajax({
      type:"POST",
      url:'tel.php',
      async:false,
      data:{'tel':value},
      success: function(msg){
        if(msg == 'yes'){
          flag = 0;
        }
      }
    });
    if(flag == 0){
      return false;
    }else{
      return true;
    }
 }, "sorry number have been exist");
 $("#myform").validate({
   errorPlacement: function(error, element) {
    error.insertAfter(element);
   },
   rules:{
       username:{
         required:true,
         remote:{
        url:"tel.php",
        type:"post",
        dataType:"html",
        data:{
         username:function(){return $("#username").val();}
        },
         dataFilter: function(data, type) {
      if (data == "yes")
       return true;
      else
       return false;
     }
       }
       },
      telphone:{
        required:true,
        rangelength:[11,11],
        phonecheck:true,
        phonesame:true
      }
    },
    messages:{
      telphone:{
        required:"Please enter your phone",
        rangelength:"phone must be 11 numbers"
      },
      username:{
        required:"Please enter your username",
        remote:"the username have been exist"
      }
    },
   debug:true
   })
 });
 </script>
</head>
<body style="margin-left:500px;margin-top:100px;">
<div style="font-size:24px;">021-1234567 or tank exist</div><br>
 <form id="myform" method="post">
 <label>Your telphone</label>
 <input name="telphone" class="required" value="" /><br><br>
 <label>Your username</label>
 <input name="username" id="username" class="required" value="" />
 <br/>
 <input type="submit" value="Submit"/>
</form>
</body>
</html>

在这里推荐大家使用jquery validate,用熟了,很方便。

更多关于jQuery插件相关内容感兴趣的读者可查看本站专题:《jQuery常用插件及用法总结》

希望本文所述对大家jQuery程序设计有所帮助。

jQuery validate插件submitHandler提交导致死循环解决方法,jqueryvalidate提交

本文实例讲述了jQuery validate插件submitHandler提交导致死循环解决方法。分享给大家供大家参考,具体如下:

dom对像的提交form.submit();和jquery对像的提交$('').submit();功能上是没有什么区别的。但是如果用了jquery validate插件,提交时这二个就区别大了。$('').submit();提交时,jquery validate会进行验证,submitHandler里面如果写了$('').submit();会导致死循环,而form.submit();则不会。

这个问题是个小问题,如果不注意,或者写习惯了,容易出错;并且出错时,很难查找。我花了近二个小时,才找到原因。

一、简单说一下dom对像和jquery对像

dom对像,你要用js的写法来操作,页面中的标签。而jquery对像呢,你要用jquery的语法来操作。

dom对像转换成jquery的对像呢,也很简单,就加上$()这个就行了,然后就可以用jquery的语法来操作,页面中的标签了。我想大家用的最多就是this了。看一下例子。

$('input[name^="hour"]').each(function(index){
  this.value=index; //this是dom对像,js写法
});
$('input[name^="hour"]').each(function(index){
  $(this).val(index); //$(this)是jquery对像,jquery写法
});

二、jquery validate 死循环程序

$("#product_form").validate({
  focusInvalid:false,
  submitHandler: function(form){
    $('.submit').submit();
  }
});

正确写法,

$("#product_form").validate({
  focusInvalid:false,
  submitHandler: function(form){
    form.submit();
  }
});

出现死循环的时候,浏览器会一直处于加载中,直到浏览器挂掉,这个时候,可以加一个alert,你就会知道,validate一直在循环验证。个人觉得,虽然是个小问题,但是很难想起来。

更多关于jQuery插件相关内容感兴趣的读者可查看本站专题:《jQuery常用插件及用法总结》

希望本文所述对大家jQuery程序设计有所帮助。

jquery.validate提示错误信息位置方法,validate错误提示位置

本文实例讲述了jquery.validate提示错误信息位置方法。分享给大家供大家参考,具体如下:

好长时间没有用jquery.validate.js这个插件了,忘得差不多了。唉,好东西还是要经常拿出来看看的,今天用jquery.validate来做一个小东西,遇到一个问题,就是错误提示信息的位置问题,如果知道的话,很简单。以前遇到过,可是忘了,现在标记一下,将来在忘了,在回过头看看。俗话说的好,好记性不如烂笔头。

举个例子,大家就知道怎么回事了。

rules: {
name:{
required:true,
rangelength:[1,20]
},
validateCode: {
required:true,
number:true,
rangelength:[5,5]
}
},
messages: {
name: {
required: "请输入命令名",
rangelength: jQuery.format("长度请控制在{0} ~ {1}")
},
validateCode: {
required: "请输入验证码",
number: "请输入数字",
rangelength: jQuery.format("长度必须是5位")
}
},
success: function(label) {
label.addClass("error checked");
},
submitHandler: function(form) {
if($("#RegionId").val() == '0'){
$("#citySelect").attr("class","error").html('请选择区域').show();
$("#RegionId").attr("class","error");
}else{
$("#RegionId").attr("class","valid");
$("#citySelect").attr("class","valid").html('success').show();
form.submit();
}
}
});

在上面的代码中,我并没有添加错误信息存放位置的方法,我们看一下效果

<td>
<input type="text" maxlength="30" value="" id="name" name="name">
<label for="name" generated="true">请输入命令名</label>
//错误信息会自动根在输入框的后面。
</td>

如果我们加上错误信息位置的方法errorPlacement来看一下效果是什么样子的。

rules: {
name:{
required:true,
rangelength:[1,20]
},
validateCode: {
required:true,
number:true,
rangelength:[5,5]
}
},
messages: {
name: {
required: "请输入命令名",
rangelength: jQuery.format("长度请控制在{0} ~ {1}")
},
validateCode: {
required: "请输入验证码",
number: "请输入数字",
rangelength: jQuery.format("长度必须是5位")
}
},
errorPlacement: function(error, element) { //错误信息位置设置方法
error.appendTo( element.parent().next() ); //这里的element是录入数据的对象
},
success: function(label) {
label.addClass("error checked");
},
submitHandler: function(form) {
if($("#RegionId").val() == '0'){
$("#citySelect").attr("class","error").html('请选择区域').show();
$("#RegionId").attr("class","error");
}else{
$("#RegionId").attr("class","valid");
$("#citySelect").attr("class","valid").html('success').show();
form.submit();
}
}
});

来看一下效果

<tr>
<th><label for="name" id="lname"><code title="必填">*</code>命令名称</label></th>
<td><input type="text" maxlength="30" value="" id="name" name="name"></td>
<td><label for="name" generated="true">请输入命令名</label></td>
//错误信息跑到这儿来了,
</tr>

够简单吧,在简单的东西,长时间不用也会忘的。

更多关于jQuery插件相关内容感兴趣的读者可查看本站专题:《jQuery常用插件及用法总结》

希望本文所述对大家jQuery程序设计有所帮助。

jQuery Validate设置onkeyup验证的实例代码,jqueryonkeyup

jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求。下面给大家分享一段jquery validate 设置onkeyup验证的代码,具体代码如下所示:

代码如下所示:

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>菜鸟教程(runoob.com)</title> 
<script src="//static.runoob.com/assets/jquery-validation-1.14.0/lib/jquery.js"></script> 
<script src="//static.runoob.com/assets/jquery-validation-1.14.0/dist/jquery.validate.min.js"></script> 
<script src="//static.runoob.com/assets/jquery-validation-1.14.0/dist/localization/messages_zh.js"></script> 
<script> 
$.validator.setDefaults({ 
submitHandler: function() { 
alert("提交事件!"); 
} 
}); 
$().ready(function() { 
$("#commentForm").validate({ 
onkeyup: function(element) { $(element).valid(); } 
}); 
}); 
</script> 
<style> 
.error{ 
color:red; 
} 
</style> 
</head> 
<body> 
<form class="cmxform" id="commentForm" method="get" action=""> 
<fieldset> 
<legend>输入您的名字,邮箱,URL,备注。</legend> 
<p> 
<label for="cname">Name (必需, 最小两个字母)</label> 
<input id="cname" name="name" minlength="2" type="text" required> 
</p> 
<p> 
<label for="cemail">E-Mail (必需)</label> 
<input id="cemail" type="email" name="email" required> 
</p> 
<p> 
<label for="curl">URL (可选)</label> 
<input id="curl" type="url" name="url"> 
</p> 
<p> 
<label for="ccomment">备注 (必需)</label> 
<textarea id="ccomment" name="comment" required></textarea> 
</p> 
<p> 
<input class="submit" type="submit" value="Submit"> 
</p> 
</fieldset> 
</form> 
</body> 
</html>

相关阅读:

利用jQuery.Validate异步验证用户名是否存在(推荐)

JQuery validate插件Remote用法大全

jQuery easyui的validatebox校验规则扩展及easyui校验框validatebox用法

jquery.validate 自定义验证方法及validate相关参数

以上所述是小编给大家介绍的jQuery Validate设置onkeyup验证,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对帮客之家网站的支持!

Validate设置onkeyup验证的实例代码,jqueryonkeyup jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供...

您可能感兴趣的文章:

  • jQuery validate插件submitHandler提交导致死循环解决方法
  • 深入学习jQuery Validate表单验证(二)
  • 深入学习jQuery Validate表单验证
  • jquery validate表单验证的基本用法入门
  • jQuery easyui的validatebox校验规则扩展及easyui校验框validatebox用法
  • jquery.validate 自定义验证方法及validate相关参数
  • jQuery插件Validate实现自定义校验结果样式
  • jQuery Validate表单验证深入学习
  • 快速学习jQuery插件 jquery.validate.js表单验证插件使用方法
  • jQuery插件EasyUI校验规则 validatebox验证框
  • jquery.validate提示错误信息位置方法

validate插件实现ajax验证重复的2种方法,jqueryvalidate 本文实例讲述了jQuery validate插件实现ajax验证重复的2种方法。分享给大家供大家参考...

您可能感兴趣的文章:

  • jQuery validate插件实现ajax验证重复的2种方法
  • 深入学习jQuery Validate表单验证(二)
  • 深入学习jQuery Validate表单验证
  • jquery validate表单验证的基本用法入门
  • jQuery easyui的validatebox校验规则扩展及easyui校验框validatebox用法
  • jquery.validate 自定义验证方法及validate相关参数
  • jQuery插件Validate实现自定义校验结果样式
  • jQuery Validate表单验证深入学习
  • 快速学习jQuery插件 jquery.validate.js表单验证插件使用方法
  • jQuery插件EasyUI校验规则 validatebox验证框
  • jquery.validate提示错误信息位置方法

validate插件submitHandler提交导致死循环解决方法,jqueryvalidate提交 本文实例讲述了jQuery validate插件submitHandler提交导致死循环解决方法。...

您可能感兴趣的文章:

  • jQuery validate插件实现ajax验证重复的2种方法
  • jQuery validate插件submitHandler提交导致死循环解决方法
  • 深入学习jQuery Validate表单验证(二)
  • 深入学习jQuery Validate表单验证
  • jquery validate表单验证的基本用法入门
  • jQuery easyui的validatebox校验规则扩展及easyui校验框validatebox用法
  • jquery.validate 自定义验证方法及validate相关参数
  • jQuery插件Validate实现自定义校验结果样式
  • jQuery Validate表单验证深入学习
  • 快速学习jQuery插件 jquery.validate.js表单验证插件使用方法
  • jQuery插件EasyUI校验规则 validatebox验证框

本文实例讲述了jquery.validate提示错误信息位置方法。分享给大家供大家参考,具体...

本文由10bet手机官网发布于面向对象,转载请注明出处:Validate设置onkeyup验证的实例代码,validate插件实现ajax验证重复的2种方法

上一篇:没有了 下一篇:没有了
猜你喜欢
热门排行
精彩图文