亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

jquery實現表單驗證簡單實例演示

2019-11-20 11:11:42
字體:
來源:轉載
供稿:網友

本文實例講述了jquery實現表單驗證代碼。分享給大家供大家參考。具體如下:
運行效果截圖如下:

具體代碼如下:

直接上插件實現代碼了,圍繞代碼進行講解比較容易點:

/*描述:基于jquery的表單驗證插件。*/(function ($) { $.fn.checkForm = function (options) {  var root = this; //將當前應用對象存入root  var isok = false; //控制表單提交的開關  var pwd1; //密碼存儲  var defaults = {   //圖片路徑   img_error: "img/error.gif",   img_success: "img/success.gif",   //提示信息   tips_success: '', //驗證成功時的提示信息,默認為空   tips_required: '不能為空',   tips_email: '郵箱地址格式有誤',   tips_num: '請填寫數字',   tips_chinese: '請填寫中文',   tips_mobile: '手機號碼格式有誤',   tips_idcard: '身份證號碼格式有誤',   tips_pwdequal: '兩次密碼不一致',   //正則   reg_email: /^/w+/@[a-zA-Z0-9]+/.[a-zA-Z]{2,4}$/i, //驗證郵箱   reg_num: /^/d+$/,         //驗證數字   reg_chinese: /^[/u4E00-/u9FA5]+$/,     //驗證中文   reg_mobile: /^1[3458]{1}[0-9]{9}$/,    //驗證手機   reg_idcard: /^/d{14}/d{3}?/w$/      //驗證身份證  };  //不為空則合并參數  if(options)   $.extend(defaults, options);  //獲?。ㄎ谋究?,密碼框,多行文本框),當失去焦點時,對其進行數據驗證  $(":text,:password,textarea", root).each(function () {   $(this).blur(function () {    var _validate = $(this).attr("check"); //獲取check屬性的值    if (_validate) {     var arr = _validate.split(' '); //用空格將其拆分成數組     for (var i = 0; i < arr.length; i++) {      //逐個進行驗證,不通過跳出返回false,通過則繼續      if (!check($(this), arr[i], $(this).val()))       return false;      else       continue;     }    }   })  })  //表單提交時執行驗證,與上面的方法基本相同,只不過是在表單提交時觸發  function _onSubmit() {   isok = true;   $(":text,:password,textarea", root).each(function () {    var _validate = $(this).attr("check");    if (_validate) {     var arr = _validate.split(' ');     for (var i = 0; i < arr.length; i++) {      if (!check($(this), arr[i], $(this).val())) {       isok = false; //驗證不通過阻止表單提交,開關false       return; //跳出      }     }    }   });  }  //判斷當前對象是否為表單,如果是表單,則提交時要進行驗證  if (root.is("form")) {   root.submit(function () {    _onSubmit();    return isok;   })  }  //驗證方法  var check = function (obj, _match, _val) {       //根據驗證情況,顯示相應提示信息,返回相應的值   switch (_match) {    case 'required':     return _val ? showMsg(obj, defaults.tips_success, true) : showMsg(obj, defaults.tips_required, false);    case 'email':     return chk(_val, defaults.reg_email) ? showMsg(obj, defaults.tips_success, true) : showMsg(obj, defaults.tips_email, false);    case 'num':     return chk(_val, defaults.reg_num) ? showMsg(obj, defaults.tips_success, true) : showMsg(obj, defaults.tips_num, false);    case 'chinese':     return chk(_val, defaults.reg_chinese) ? showMsg(obj, defaults.tips_success, true) : showMsg(obj, defaults.tips_chinese, false);    case 'mobile':     return chk(_val, defaults.reg_mobile) ? showMsg(obj, defaults.tips_success, true) : showMsg(obj, defaults.tips_mobile, false);    case 'idcard':     return chk(_val, defaults.reg_idcard) ? showMsg(obj, defaults.tips_success, true) : showMsg(obj, defaults.tips_idcard, false);    case 'pwd1':     pwd1 = _val; //實時獲取存儲pwd1值     return true;    case 'pwd2':     return pwdEqual(_val, pwd1) ? showMsg(obj, defaults.tips_success, true) : showMsg(obj, defaults.tips_pwdequal, false);    default:     return true;   }  }  //判斷兩次密碼是否一致(返回bool值)  var pwdEqual = function(val1, val2) {   return val1 == val2 ? true : false;  }  //正則匹配(返回bool值)  var chk = function (str, reg) {   return reg.test(str);  }  //顯示信息  var showMsg = function (obj, msg, mark) {   $(obj).next("#errormsg").remove();//先清除   var _html = "<span id='errormsg' style='font-size:13px;color:gray;background:url(" + defaults.img_error + ") no-repeat 0 -1px;padding-left:20px;margin-left:5px;'>" + msg + "</span>";   if (mark)    _html = "<span id='errormsg' style='font-size:13px;color:gray;background:url(" + defaults.img_success + ") no-repeat 0 -1px;padding-left:20px;margin-left:5px;'>" + msg + "</span>";   $(obj).after(_html);//再添加   return mark;  } }})(jQuery);

  

先來說一說實現原理:

       首先定義好正則,和相應的提示信息,

  加上自定義check屬性,

  然后獲取check屬性的值,多個值用空格分開。利用split()將其拆分為數組,在逐個調用check()方法進行驗證。

  之后通過驗證的返回值來確定顯示的信息。

這里有兩個驗證是比較特別的,就是:

1.驗證是否為空 (required)

2.兩次密碼是否一致 (pwd2)

這兩個都沒有用到正則,因為根本就用不上。 兩次密碼是否一致 ,單獨寫了個方法 pwdEqual();

插件里的驗證正則我只寫了幾個 ,如果不夠用可以自行擴展添加。

擴展只需3步:

1.添加正則,

2.添加相應提示信息,

3.check()方法中添加相應 case 處理

 

插件使用說明:

  1.給表單下要進行驗證的文本框,密碼框 ,多行文本框加上自定義check屬性

  2.多個格式驗證用空格間隔,如(同時驗證必填和郵箱): check="required email"

  3.如果要驗證兩次密碼是否一致,則pwd1和pwd2一起使用,如下圖:

pwd1存儲第一次輸入的值,pwd2存儲第二次輸入的值,如果你只用pwd1還好,但如果只用了pwd2,則驗證是始終無法通過的。

下面給出DEMO示例代碼:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> <title>表單驗證插件</title></head><body> <form id="myform" method="post" action="success.html">  <ul>   <li>   郵箱:<input type="text" name="email" check="required email" />   </li>   <li>   密碼:<input type="password" check="required pwd1" />   </li>   <li>   確認密碼:<input type="password" check="required pwd2" />   </li>   <li>   手機:<input type="text" name="num" check="required mobile" />   </li>   <li>   數字:<input type="text" name="num" check="required num" />   </li>   <li>   地址:<textarea cols="5" rows="5" check="required"></textarea>   </li>   <li>   不加check驗證的文本框:<input type="text" name="num" />   </li>  </ul>  <input type="submit" value="提交" /> </form> <script src="js/jquery-1.4.4.min.js" type="text/javascript"></script> <script src="js/jquery.similar.checkForm.js" type="text/javascript"></script> <script type="text/javascript">  $("#myform").checkForm(); </script></body></html>

示例效果圖片:

示例代碼,成功提交是會跳轉到success.html頁面的,因此你要自己創建個success.html,里面可以什么都不寫。

但是,只要有一個驗證不通過,就不會成功跳轉。

另外,你或許還需要2張圖片:

//圖片路徑
 img_error: "img/error.gif",
 img_success: "img/success.gif",

   上傳在這了,自己右鍵另存為吧。

本文已被整理到了《jquery表單驗證大全》 ,歡迎大家學習閱讀。

以上就是本文的全部內容,希望能夠幫助大家找更好的掌握jquery驗證碼的實現方法。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
xvideos成人免费中文版| 日本成人在线视频网址| 日韩欧美在线观看| 成人免费网视频| 欧美夫妻性视频| 理论片在线不卡免费观看| 成人观看高清在线观看免费| 最新国产成人av网站网址麻豆| 日韩高清人体午夜| 日韩中文字幕av| 久久久噜噜噜久久中文字免| 一区二区三区天堂av| 精品亚洲va在线va天堂资源站| 久久久久久久国产精品视频| 国产精品美女无圣光视频| 国产www精品| 深夜福利日韩在线看| 一级做a爰片久久毛片美女图片| 日韩av影视在线| 国产日本欧美一区| 亚洲视频在线免费观看| 国产精品专区第二| 亚洲va欧美va在线观看| 久久99精品久久久久久琪琪| 亚洲国产精品成人一区二区| 国产99久久精品一区二区 夜夜躁日日躁| 中文字幕亚洲综合久久筱田步美| 成人免费高清完整版在线观看| zzijzzij亚洲日本成熟少妇| 亚洲午夜未满十八勿入免费观看全集| 亚洲福利视频久久| 日韩在线国产精品| 国产精品久久久久久婷婷天堂| 一区二区欧美日韩视频| 亚洲三级 欧美三级| 91视频免费网站| 97在线免费视频| 国模叶桐国产精品一区| 色偷偷噜噜噜亚洲男人| 国产精品99久久久久久白浆小说| 精品动漫一区二区| 精品久久久久久| 欧美亚洲国产视频| 91久久国产婷婷一区二区| 欧美野外wwwxxx| 欧美日韩一区二区免费视频| 国产亚洲一区精品| 亚洲18私人小影院| 亚洲aⅴ男人的天堂在线观看| 日韩亚洲在线观看| 亚洲国产精品电影| 欧美日韩国产精品| 亚洲精品www| 日韩在线观看成人| 久久综合亚洲社区| 久久综合免费视频影院| 岛国视频午夜一区免费在线观看| 久久偷看各类女兵18女厕嘘嘘| 中文字幕亚洲第一| 久久人体大胆视频| 国产精品午夜视频| 亚洲一区久久久| 91精品综合视频| 狠狠躁夜夜躁久久躁别揉| 国模极品一区二区三区| 久国内精品在线| 欧美激情亚洲激情| 粉嫩av一区二区三区免费野| 国产丝袜一区视频在线观看| 日韩av在线免费| 中文字幕精品www乱入免费视频| 欧美国产视频一区二区| 久久精品国产成人| 国产精品久久久久久中文字| 亚洲男人天堂手机在线| 亚洲精品大尺度| 亚洲成人激情小说| 57pao成人国产永久免费| 欧美国产日本在线| 国产亚洲激情视频在线| 国模精品视频一区二区三区| 中文字幕亚洲欧美一区二区三区| 亚洲香蕉成人av网站在线观看| 亚洲白拍色综合图区| 青青久久av北条麻妃黑人| 久久影视三级福利片| 欧美高清无遮挡| 在线观看视频99| 精品国产欧美一区二区五十路| 欧美亚洲在线观看| 亚洲丝袜在线视频| 97婷婷大伊香蕉精品视频| 亚洲美女中文字幕| 亚洲欧美制服综合另类| 91精品啪aⅴ在线观看国产| 国产精品极品尤物在线观看| 亚洲男人第一网站| 欧美成人午夜激情视频| 中国日韩欧美久久久久久久久| 尤物九九久久国产精品的分类| 亚洲国产成人久久综合| 欧美日韩另类视频| 91色视频在线导航| 精品中文字幕久久久久久| 久久国产精品久久精品| 亚洲精品乱码久久久久久按摩观| 日韩欧美国产高清91| 欧美一级高清免费| 久久精品国产免费观看| 国产精品免费一区二区三区都可以| 欧日韩不卡在线视频| 国产午夜精品久久久| 草民午夜欧美限制a级福利片| 精品国产精品三级精品av网址| 亚洲第一av在线| 国产精品丝袜高跟| 北条麻妃在线一区二区| 欧美日韩中国免费专区在线看| 色琪琪综合男人的天堂aⅴ视频| 91经典在线视频| 欧美自拍视频在线| 欧美成人精品一区二区| 亚洲国产精品成人va在线观看| 久久国产精品久久久久| 国产欧美日韩专区发布| 欧美日韩在线视频观看| 4438全国亚洲精品在线观看视频| 91福利视频在线观看| 国产亚洲欧洲高清| 色香阁99久久精品久久久| 亚洲码在线观看| 日韩美女中文字幕| 国产精品永久在线| 一区二区三区精品99久久| 97久久伊人激情网| 亚洲一区二区三区视频播放| 国产不卡av在线| 欧美午夜电影在线| 亚洲天堂av在线免费观看| 日韩一区在线视频| 亚洲国产精品va在线看黑人动漫| 亚洲欧美一区二区精品久久久| 777午夜精品福利在线观看| 日韩av毛片网| 日韩高清a**址| 91探花福利精品国产自产在线| 国产亚洲成精品久久| 欧美国产日本高清在线| 久久久久久久影院| 亚洲人成电影网站色| 一本色道久久88综合日韩精品| 久久久久久久久久久久av| 亚洲va国产va天堂va久久| 国产精品日韩在线观看| 日本午夜精品理论片a级appf发布| 亚洲人成绝费网站色www| 永久555www成人免费| 亚洲精选一区二区| 欧美韩国理论所午夜片917电影| 国产精品福利无圣光在线一区| 国产精品高清在线观看| 日韩大片在线观看视频| 96精品视频在线| 国产成人综合精品在线|