您好,欢迎访问一九零五行业门户网

分享jquery插件--表单验证

var regaction = (function () { var defaultopts = { 'regform' : 'regfrom', 'username' : 'username', 'userpwd' : 'userpwd', 'confirmpwd' : 'confirmpwd', 'checkcode' : 'checkcode', 'accept' : 'accept', 'errortrips' : 'errortrips', 'channel' : 'channel', 'loginauto' : 'loginauto', 'btnaction' : 'btnaction' }, isreg = 1; //去掉空格 function trim(str) { return str.replace(//s+$|^/s+/g, ''); } //检测email function isemail(email) { return /^[/w/-/.]+@[/w/-/.]+(/./w+)+$/i.test(email) } //检测用户名 function checkusername(callback) { var optsobj = defaultopts; var nameobj = optsobj.username; var errortripsobj = optsobj.errortrips; var value = trim(nameobj.val()); nameobj.val(value); if (!isemail(value)) { errortripsobj.html('请输入正确的邮箱地址').css('visibility', 'visible'); nameobj.focus(); if (callback) { callback(false); } } else { $.ajax({ url : '/index.php?ac=account&op=checkuser', datatype : 'json', type : 'post', data : { username : value }, success : function (res) { if (res) { switch (res.string) { case '1': //errortripsobj.html('该邮箱已经被注册').css('visibility', 'visible'); optsobj.checkcode.hide(); $(#jchkcode).hide(); $(#jprivacy).hide(); $(#jremeberbox).show(); $(#repwd-box).hide(); $(#jhd).text(登录快盘); $(#jcnt).text(随时随地查看文件); optsobj.btnaction.val(立即登录); isreg = 2; //nameobj.focus(); if (callback) { //callback(false); callback(true); } nameobj.change(function () { optsobj.checkcode.show(); $(#jchkcode).show(); $(#jprivacy).show(); $(#jremeberbox).hide(); $(#repwd-box).show(); $(#jhd).text(注册快盘); $(#jcnt).text(只需5秒,立即拥有15gb空间); optsobj.btnaction.val(立即注册); isreg = 1; }); break; case '2': default: errortripsobj.css('visibility', 'hidden'); if (callback) { callback(true); } } } else { if (callback) { callback(true); } } } }) } } //检测密码 function checkpwd(callback) { var optsobj = defaultopts; var userpwd = optsobj.userpwd; var username = optsobj.username; var confirmpwd = optsobj.confirmpwd; var errortripsobj = optsobj.errortrips; var loginauto = optsobj.loginauto; var len = trim(userpwd.val()).length; if (0 == len) { errortripsobj.html('请填写登录密码').css('visibility', 'visible'); userpwd.focus(); return false; } else { if (len < 6 || len > 32) { errortripsobj.html('密码应在6-32位字符内').css('visibility', 'visible'); userpwd.focus(); return false; } else { errortripsobj.css('visibility', 'hidden'); if (isreg === 1) { var relen = trim(confirmpwd.val()).length; if (0 == relen) { errortripsobj.html('请填写重复登录密码').css('visibility', 'visible'); confirmpwd.focus(); return false; } else { if (userpwd.val() != confirmpwd.val()) { errortripsobj.html('两次密码输入不一致').css('visibility', 'visible'); confirmpwd.focus(); return false; } else { return true; } } } else { if (loginauto.attr(checked) === checked) { loginauto.val(1); } else { loginauto.val(0); } $.ajax({ url : '/index.php?ac=account&op=login', type : 'post', datatype : 'json', data : { 'username' : username.val(), 'userpwd' : userpwd.val(), 'rememberme' : loginauto.val(), 'isajax' : 'yes' }, success : function (res) { if (res.state == 0) { errortripsobj.html('用户名密码不匹配').css('visibility', 'visible'); userpwd.focus(); return false; } else { if(callback) { location.href = /home.htm ; } } } }); } } } } //检测是否接受协议 function checkaccpet() { var optsobj = defaultopts; var acceptobj = optsobj.accept; var errortripsobj = optsobj.errortrips; if (acceptobj.attr('checked')) { return true; } else { errortripsobj.html('请阅读并接受用户协议').css('visibility', 'visible'); acceptobj.focus(); return false; } } //验证码检测 function checkcode() { var optsobj = defaultopts; var checkcodeobj = optsobj.checkcode; var errortripsobj = optsobj.errortrips; if (checkcodeobj.length == 1 &&  == checkcodeobj.val()) { errortripsobj.html('请输入验证码').css('visibility', 'visible'); checkcodeobj.focus(); return false; } else { return true; } } //注册表单提交 function regformsubmit(e, data) { checkusername(function (f) { var result, checkpwdresult; if (isreg === 1) { defaultopts.regform.attr(action, /index.php?ac=account&op=registerhanlder); result = f && checkpwd() && checkaccpet() && checkcode(); if (result) { defaultopts.regform.unbind('submit').submit(); } } else { checkpwd( f ); } }); if (!data) { return false; } } function bindevent() { var optsobj = defaultopts; optsobj.regform.submit($.proxy(regformsubmit, this)); optsobj.username.change(function () { checkusername(); }) optsobj.userpwd.change($.proxy(checkpwd, this)); if (isreg === 1) { optsobj.confirmpwd.change($.proxy(checkpwd, this)); } } return { init : function (opts) { $.each(opts, function (i, n) { opts[i] = $(# + n); }); defaultopts = $.extend(defaultopts, opts); bindevent(); }, checkemailvlaue : function () { checkusername(); } }; })();
regaction.init({'regform':'regform','username':'email','errortrips':'erroinfo','userpwd':'pwd','confirmpwd':'re-pwd','accept':'chkaccpet','checkcode':'checkcode','loginauto':'login-auto','btnaction':'jaction'});//初始化
以上就是分享jquery插件--表单验证的详细内容。
其它类似信息

推荐信息