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


Posted in Javascript onJanuary 22, 2016

本文实例讲述了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程序设计有所帮助。

Javascript 相关文章推荐
飞鱼(shqlsl) javascript作品集
Dec 16 Javascript
jquery下拉select控件操作方法分享(jquery操作select)
Mar 25 Javascript
js调试系列 控制台命令行API使用方法
Jun 18 Javascript
使用Web Uploader实现多文件上传
Jun 08 Javascript
微信小程序侧边栏滑动特效(左右滑动)
Jan 23 Javascript
vue+axios实现登录拦截的实例代码
May 22 Javascript
angular中的cookie读写方法
Aug 02 Javascript
小程序实现单选多选功能
Nov 04 Javascript
JS实现集合的交集、补集、差集、去重运算示例【ES5与ES6写法】
Feb 18 Javascript
js实现简单的点名器随机色实例代码
Sep 20 Javascript
微信小程序绘制半圆(弧形)进度条
Nov 18 Javascript
vue3.0实现点击切换验证码(组件)及校验
Nov 18 Vue.js
jQuery禁用键盘后退屏蔽F5刷新及禁用右键单击
Jan 22 #Javascript
如何利用JS通过身份证号获取当事人的生日、年龄、性别
Jan 22 #Javascript
jQuery解析json格式数据简单实例
Jan 22 #Javascript
基于javascript实现根据身份证号码识别性别和年龄
Jan 22 #Javascript
基于jQuery仿淘宝产品图片放大镜特效
Oct 19 #Javascript
jQuery图片旋转插件jQueryRotate.js用法实例(附demo下载)
Jan 21 #Javascript
jQuery validate插件submitHandler提交导致死循环解决方法
Jan 21 #Javascript
You might like
destoon实现调用自增数字从1开始的方法
2014/08/21 PHP
php绘制圆形的方法
2015/01/24 PHP
关于递归运算的顺序测试代码
2011/11/30 Javascript
jquery表单验证使用插件formValidator
2012/11/10 Javascript
js切换div css注意的细节
2012/12/10 Javascript
jquery选择器之内容过滤选择器详解
2014/01/27 Javascript
JavaScript中this关键词的使用技巧、工作原理以及注意事项
2014/05/20 Javascript
nodejs的10个性能优化技巧
2014/07/15 NodeJs
JavaScript使用slice函数获取数组部分元素的方法
2015/04/06 Javascript
JavaScript实现简单的数字倒计时
2015/05/15 Javascript
JS实现单击输入框弹出选择框效果完整实例
2015/12/14 Javascript
jquery表单验证插件formValidator使用方法
2016/04/01 Javascript
特殊日期提示功能的实现方法
2016/06/16 Javascript
js实现右键菜单功能
2016/11/28 Javascript
js仿微信公众平台打标签功能
2017/04/08 Javascript
配置nodejs环境的方法
2017/05/13 NodeJs
vue2 中如何实现动态表单增删改查实例
2017/06/09 Javascript
微信小程序 云开发模糊查询实现解析
2019/09/02 Javascript
在layui中使用form表单监听ajax异步验证注册的实例
2019/09/03 Javascript
layui实现多图片上传并限制上传的图片数量
2019/09/26 Javascript
Js on及addEventListener原理用法区别解析
2020/07/11 Javascript
Python3 replace()函数使用方法
2018/03/19 Python
python实现猜数字小游戏
2020/03/24 Python
Python制作微信好友背景墙教程(附完整代码)
2019/07/17 Python
Python全栈之列表数据类型详解
2019/10/01 Python
python+gdal+遥感图像拼接(mosaic)的实例
2020/03/10 Python
详解CSS3的box-shadow属性制作边框阴影效果的方法
2016/05/10 HTML / CSS
编写html5时调试发现脚本php等网页js、css等失效
2013/12/31 HTML / CSS
美国牙科折扣计划:DentalPlans.com
2019/08/26 全球购物
英文简历自荐信范文
2013/12/11 职场文书
拉拉队口号
2014/06/16 职场文书
三八红旗手先进事迹材料(2016推荐版)
2016/02/25 职场文书
MongoDB 常用的crud操作语句
2021/06/20 MongoDB
Spring实现内置监听器
2021/07/09 Java/Android
Python编程根据字典列表相同键的值进行合并
2021/10/05 Python
Python实现制作销售数据可视化看板详解
2021/11/27 Python