转载自:http://blog.51yip.com/jsjquery/1484.html

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

简单说一下js代码,详细一点的看上面例子源码:

  1. $(document).ready(function(){
  2. jQuery.validator.addMethod("phonecheck", function(value, element) {   //添加一个phonecheck方法,来自定义check规则
  3. string = value.match(/0(\d{2,2})-(\d{7,7})/ig);
  4. if(string != null){
  5. return true;
  6. }else{
  7. return false;
  8. }
  9. }, "telphone number like 021-1234567");
  10. jQuery.validator.addMethod("phonesame", function(value, element) {    //用jquery ajax的方法验证电话是不是已存在
  11. var flag = 1;
  12. $.ajax({
  13. type:"POST",
  14. url:'tel.php',
  15. async:false,                                             //同步方法,如果用异步的话,flag永远为1
  16. data:{'tel':value},
  17. success: function(msg){
  18. if(msg == 'yes'){
  19. flag = 0;
  20. }
  21. }
  22. });
  23. if(flag == 0){
  24. return false;
  25. }else{
  26. return true;
  27. }
  28. }, "sorry number have been exist");
  29. $("#myform").validate({
  30. errorPlacement: function(error, element) {
  31. error.insertAfter(element);
  32. },
  33. rules:{
  34. username:{
  35. required:true,
  36. remote:{                         //自带远程验证存在的方法
  37. url:"tel.php",
  38. type:"post",
  39. dataType:"html",
  40. data:{
  41. username:function(){return $("#username").val();}
  42. },
  43. dataFilter: function(data, type) {
  44. if (data == "yes")
  45. return true;
  46. else
  47. return false;
  48. }
  49. }
  50. },
  51. telphone:{
  52. required:true,
  53. rangelength:[11,11],
  54. phonecheck:true,
  55. phonesame:true
  56. }
  57. },
  58. messages:{
  59. telphone:{
  60. required:"Please enter your phone",
  61. rangelength:"phone must be 11 numbers"
  62. },
  63. username:{
  64. required:"Please enter your username",
  65. remote:"the username have been exist"
  66. }
  67. },
  68. debug:true
  69. })
  70. });
  71. </script>

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

转载请注明
作者:海底苍鹰
地址:http://blog.51yip.com/jsjquery/1483.html

jquery validate ajax 验证重复的2种方法的更多相关文章

  1. jQuery Validate Ajax 验证

    jQuery Validate Ajax 验证 <script type="text/javascript"> $(function() { $('#formCityL ...

  2. jquery.validate ajax验证

    $("#form1").validate({ rules: { ctl00$ContentPlaceHolder1$txtShopName: { remote: { type: & ...

  3. 1)jquery validate 远程验证remote,自定义验证 , 手机号验证 2)bootstrap validate 远程remote验证的方法.

    1)jquery  validate 远程验证remote,自定义验证 1-1: js <script src="YYFramework/Public/js/jquery-3.1.1. ...

  4. jquery validate remote验证唯一性

    jquery.validate.js 的 remote 后台验证 之前已经有一篇关于jquery.validate.js验证的文章,还不太理解的可以先看看:jQuery Validate 表单验证(这 ...

  5. jQuery Validate扩展验证方法 (zhangxiaobin)

    /***************************************************************** jQuery Validate扩展验证方法 (zhangxiaob ...

  6. 封装jQuery Validate扩展验证方法

    一.封装自定义验证方法-validate-methods.js /***************************************************************** j ...

  7. jquery validate扩展验证方法

    /***************************************************************** jQuery Validate扩展验证方法 (linjq) *** ...

  8. 扩展jquery.validate自定义验证,自定义提示,本地化

    <!DOCTYPE html> <html> <head> <meta name="viewport" content="wid ...

  9. jquery.validate.js 验证表单时,在IE当中未验证就直接提交的原因

    jquery.validate.js 验证表单时,在IE当中未验证就直接提交的原因 今天利用了jquery.validate.js来验证表单,发现在火狐.谷歌浏览器当中都可以进行验证,但是在IE系列浏 ...

随机推荐

  1. “Hello World!”团队召开的第六次会议

    团队“Hello World!”团队召开的第六次会议. 博客内容: 一.会议时间 二.会议地点 三.会议成员 四.会议内容 五.Todo List 六.会议照片 七.燃尽图 一.会议时间 2017年1 ...

  2. Thunder团队第七周 - Scrum会议5

    Scrum会议5 小组名称:Thunder 项目名称:i阅app Scrum Master:邹双黛 工作照片: 宋雨沉迷于照相无法自拔,所以不在相片中. 参会成员: 王航:http://www.cnb ...

  3. Python学习之路7 - 生成器&迭代器

    本章内容: 列表生成式 生成器 yield 迭代器 列表生成式 当我们要定义一个列表的时候,我们通常用这种方式a = [1,2,3],但是如果我们定义了一个比较长的列表的时候,手动定义列表就会比较麻烦 ...

  4. SDN前瞻 传统网络的缺陷

    引言 在网络发展速度如此之快的今天,传统网络的架构充满了危机,主要有这四个问题: 传统网络部署管理困难. 分布式架构瓶颈出现. 流量控制难真正实现. 设备不可编程. 现在的网络厂商 种类繁多的网络厂商 ...

  5. a5

    今日内容: 今天主要还是素材的查找,图标的制作以及调整. 明日计划: 主要还是完成图标,尽可能的美化 困难: 一个是直男式的审美吧,另一个是PS的技术还不够深

  6. 已知一个数出现的次数超过了一半,请用O(n)的复杂度的算法找出这个数

    #include<iostream> using namespace std; //#define maxn 2000010 #include<stdio.h> //int a ...

  7. HDU 5225 枚举

    题目链接: hdu:http://acm.hdu.edu.cn/showproblem.php?pid=5225 bc(中文):http://bestcoder.hdu.edu.cn/contests ...

  8. Java clone() 浅拷贝 深拷贝

    假如说你想复制一个简单变量.很简单: int apples = 5; int pears = apples; 不仅仅是int类型,其它七种原始数据类型(boolean,char,byte,short, ...

  9. 【beta】nice!-------约吧NABCD

    小组名称:nice! 组长:李权 成员:于淼  刘芳芳韩媛媛 宫丽君 项目内容:约跑app(约吧) 约吧APP下载地址: 百度云:链接:http://pan.baidu.com/s/1jHNBR3g ...

  10. php 多维数组排序

    PHP中array_multisort可以用来一次对多个数组进行排序,或者根据某一维或多维对多维数组进行排序. 关联(string)键名保持不变,但数字键名会被重新索引. 输入数组被当成一个表的列并以 ...