validata基本使用

来源:互联网 发布:linux改为中文 编辑:程序博客网 时间:2024/05/23 00:32
关于validata做一个记录。
导包://cdn.bootcss.com/jquery-validate/1.14.0/jquery.validate.min.js"
<span style="font-family: Arial, Helvetica, sans-serif;">表单:</span>
<span style="white-space:pre"></span><form id="logForm" action="**" method="post">用户名:<input type="text" name="userName" /><br>密码:<input type="password" name="pwd" id="pwd" /><br>重复密码:<input type="password" name="password_agin" /><br>身份证:<input type="text" name="isIdCardNo" id="isIdCardNo"><br>性别:<div><input type="radio" name="sex"><input type="radio" name="sex"></div><input type="submit" value="提交"></form>

js代码:

<span style="white-space:pre"></span>$(document).ready(function(){//自定义身份证验证 jQuery.validator.addMethod("isIdCardNo", function (value, element) {return this.optional(element) || isIdCardNo(value);}, "请正确输入您的身份证号码");$("#logForm").validate({rules : {userName : {required : true,maxlength:15,minlength:6},pwd : {required : true,maxlength:20,minlength:7,},password_agin : {equalTo:"#pwd"},isIdCardNo:{required:true,isIdCardNo:true},sex: {required: true}},messages : {userName : {required : "名称必须填写",maxlength:"最大长度为{0}",minlength:"最小长度为{0}"},pwd : {required : "密码必须填写",maxlength:"最大长度为{0}",minlength:"最小长度为{0}",},password_agin : {equalTo:"两次密码不同"},isIdCardNo:{required:"必须写",isIdCardNo:"请输入正确的身份证号码"},sex : {required:"必须选"}}, errorPlacement: function (error, element) { //指定错误信息位置if (element.is(':radio') || element.is(':checkbox')) { //如果是radio或checkboxvar eid = element.attr('name'); //获取元素的name属性error.appendTo(element.parent()); //将错误信息添加当前元素的父结点后面} else {error.insertAfter(element);}}});//身份证验证function isIdCardNo(num) {var factorArr = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1);var parityBit = new Array("1", "0", "X", "9", "8", "7", "6", "5", "4", "3", "2");var varArray = new Array();var intValue;var lngProduct = 0;var intCheckDigit;var intStrLen = num.length;var idNumber = num;// initializeif ((intStrLen != 15) && (intStrLen != 18)) {return false;}// check and set valuefor (i = 0; i < intStrLen; i++) {varArray[i] = idNumber.charAt(i);if ((varArray[i] < '0' || varArray[i] > '9') && (i != 17)) {return false;} else if (i < 17) {varArray[i] = varArray[i] * factorArr[i];}}return true;}})
<span style="white-space:pre"></span>个人认为validata非常方便,方便到你只需要知道如何使用就行了,而不必知道原理。

0 0
原创粉丝点击