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 相关文章推荐
Sample script that displays all of the users in a given SQL Server DB
Jun 16 Javascript
如何用JavaScript动态呼叫函数(两种方式)
May 03 Javascript
探讨jQuery的ajax使用场景(c#)
Dec 03 Javascript
用原生js统计文本行数的简单示例
Aug 19 Javascript
JS查找字符串中出现次数最多的字符
Sep 05 Javascript
微信小程序 标签传入数据
May 08 Javascript
select标签设置默认选中的选项方法
Mar 02 Javascript
详解vuex状态管理模式
Nov 01 Javascript
如何让微信小程序页面之间的通信不再变困难
Jun 03 Javascript
微信小程序实现form表单本地储存数据
Jun 27 Javascript
微信小程序 WXML节点信息查询详解
Jul 29 Javascript
vue-video-player视频播放器使用配置详解
Oct 23 Javascript
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
PHP开发工具ZendStudio下Xdebug工具使用说明详解
2013/11/11 PHP
php使用Cookie实现和用户会话的方法
2015/01/21 PHP
ThinkPHP 3.2.3实现页面静态化功能的方法详解
2017/08/03 PHP
php-fpm添加service服务的例子
2018/04/27 PHP
Yii 框架入口脚本示例分析
2020/05/19 PHP
JavaScript中的对象化编程
2008/01/16 Javascript
JavaScript 异步调用框架 (Part 6 - 实例 &amp; 模式)
2009/08/04 Javascript
ASP中进行HTML数据及JS数据编码函数
2009/11/11 Javascript
javascript中怎么做对象的类型判断
2013/11/11 Javascript
jQuery中:nth-child选择器用法实例
2014/12/31 Javascript
JavaScript字符串常用类使用方法汇总
2015/04/14 Javascript
js脚本分页代码分享(7种样式)
2015/08/19 Javascript
JS清除字符串中重复值的实现方法
2016/08/03 Javascript
Angular2内置指令NgFor和NgIf详解
2016/08/03 Javascript
微信小程序购物商城系统开发系列-工具篇的介绍
2016/11/21 Javascript
JS使用正则实现去掉字符串左右空格的方法
2016/12/27 Javascript
AngularJS1.X学习笔记2-数据绑定详解
2017/04/01 Javascript
Node.js 8 中的 util.promisify的详解
2017/06/12 Javascript
Iscrool下拉刷新功能实现方法(推荐)
2017/06/26 Javascript
解决vue中对象属性改变视图不更新的问题
2018/02/23 Javascript
vue2 全局变量的设置方法
2018/03/09 Javascript
vue监听对象及对象属性问题
2018/08/20 Javascript
Vue面试题及Vue知识点整理
2018/10/07 Javascript
Vue使用v-viewer实现图片预览
2020/10/21 Javascript
Python实现命令行通讯录实例教程
2016/08/18 Python
Python之——生成动态路由轨迹图的实例
2019/11/22 Python
英国著名音像制品和图书游戏购物网站:Zavvi
2016/08/04 全球购物
法国奢华女性时尚配饰网上商店:Monnier Frères
2016/08/27 全球购物
北京华建集团SQL面试题
2014/06/03 面试题
信息系统专业个人求职信范文
2013/12/07 职场文书
校园安全教育广播稿
2014/02/17 职场文书
给老婆的道歉信
2015/01/20 职场文书
党员自我评价范文2015
2015/03/03 职场文书
推广普通话的宣传语
2015/07/13 职场文书
MySQL中存储时间的最佳实践指南
2021/07/01 MySQL
Win11 Build 25179预览版发布(附更新内容+ISO官方镜像下载)
2022/08/14 数码科技