$(function() { validateKickout(); validateRule(); registerValidateRule(); phoneNumberValidateRule(); $('.imgcode').click(function() { var url = ctx + "captcha/captchaImage?type=" + captchaType + "&s=" + Math.random(); $(".imgcode").attr("src", url); }); }); $.validator.setDefaults({ submitHandler: function(from) { console.log(from.id) if("registerForm"==from.id){ register(); }else if("signupForm"==from.id){ login(); }else { messageLogin(); } } }); function login() { $.modal.loading($("#btnSubmit").data("loading")); var username = $.common.trim($("input[name='username']").val()); var password = $.common.trim($("input[name='password']").val()); var validateCode = $("input[name='validateCode']").val(); var rememberMe = $("input[name='rememberme']").is(':checked'); $.ajax({ type: "post", url: ctx + "login", data: { "username": username, "password": password, "validateCode": validateCode, "rememberMe": rememberMe }, success: function(r) { if (r.code == web_status.SUCCESS) { location.href = ctx + 'dzhwk/index'; } else { $('.imgcode').click(); $(".code").val(""); $.modal.msg(r.msg); } $.modal.closeLoading(); } }); } function register() { $.modal.loading($("#btnSubmitRegister").data("loading")); var username = $.common.trim($("input[name='registerUsername']").val()); var password = $.common.trim($("input[name='registerPassword']").val()); var validateCode = $("input[name='registerValidateCode']").val(); $.ajax({ type: "post", url: ctx + "register", data: { "loginName": username, "password": password, "validateCode": validateCode }, success: function(r) { if (r.code == web_status.SUCCESS) { layer.alert("恭喜你,您的账号 " + username + " 注册成功!", { icon: 1, title: "系统提示" }, function(index) { //关闭弹窗 layer.close(index); location.href = ctx + 'login'; }); } else { $.modal.closeLoading(); $('.imgcode').click(); $(".code").val(""); $.modal.msg(r.msg); } } }); } function messageLogin() { $.modal.loading($("#btnMessageLogin").data("loading")); var phoneNumber = $.common.trim($("input[name='phoneNumber']").val()); var validateCode = $("input[name='phoneNumberValidateCode']").val(); $.ajax({ type: "post", url: ctx + "messageLogin", data: { "phoneNumber": phoneNumber, "validateCode": validateCode }, success: function(r) { if (r.code == web_status.SUCCESS) { console.log(ctx + 'index'); location.href = ctx + 'index'; } else { $.modal.msg(r.msg); } $.modal.closeLoading(); } }) } function validateRule() { var icon = " "; $("#signupForm").validate({ rules: { username: { required: true }, password: { required: true } }, messages: { username: { required: icon + "请输入您的用户名", }, password: { required: icon + "请输入您的密码", } } }) } function validateKickout() { if (getParam("kickout") == 1) { layer.alert("您已在别处登录,请您修改密码或重新登录", { icon: 0, title: "系统提示" }, function(index) { //关闭弹窗 layer.close(index); if (top != self) { top.location = self.location; } else { var url = location.search; if (url) { var oldUrl = window.location.href; var newUrl = oldUrl.substring(0, oldUrl.indexOf('?')); self.location = newUrl; } } }); } } function registerValidateRule() { var icon = " "; $("#registerForm").validate({ rules: { registerUsername: { required: true, minlength: 2 }, registerPassword: { required: true, minlength: 5 }, confirmRegisterPassword: { required: true, equalTo: "[name='registerPassword']" } }, messages: { registerUsername: { required: icon + "请输入您的用户名", minlength: icon + "用户名不能小于2个字符" }, registerPassword: { required: icon + "请输入您的密码", minlength: icon + "密码不能小于5个字符", }, confirmRegisterPassword: { required: icon + "请再次输入您的密码", equalTo: icon + "两次密码输入不一致" } } }) } function phoneNumberValidateRule() { var icon = " "; $("#messageLoginForm").validate({ rules: { phoneNumber: { required: true, minlength: 11, maxlength: 11, isPhoneNum:true }, phoneNumberValidateCode: { required: true, minlength: 6, maxlength: 6 } }, messages: { phoneNumber: { required: icon + "请输入您的手机号", minlength: icon + "手机号不能小于11个字符", maxlength: icon + "手机号最大11个字符", isPhoneNum:icon+"请正确填写您的手机号码" }, phoneNumberValidateCode: { required: icon + "请输入您的验证码", minlength: icon + "验证码最小为6位号码", maxlength: icon + "验证码最大6位号码" } } }) } function getParam(paramName) { var reg = new RegExp("(^|&)" + paramName + "=([^&]*)(&|$)"); var r = window.location.search.substr(1).match(reg); if (r != null) return decodeURI(r[2]); return null; } //自定义手机号验证 jQuery.validator.addMethod("isPhoneNum", function(value, element) { var length = value.length; var mobile =/^1[34578]\d{9}$/; return this.optional(element) || (length == 11 && mobile.test(value)); }, "请正确填写您的手机号码"); var duration = 60; //60秒 // 获取验证码按钮点击事件 function sendMsgCode() { $("#secondShow").css('display', 'block'); $("#sendMessageCode").css('display', 'none'); $("#secondShow").html('重新发送(' + duration + 's)'); var timer = setInterval(function () { if (duration == 0) { clearInterval(timer); $("#secondShow").css('display', 'none'); $("#sendMessageCode").css('display', 'block'); duration = 60; } $("#secondShow").html('重新发送(' + (duration - 1) + 's)'); duration--; }, 1000); //TODO //发短信业务 var phoneNumber = $.common.trim($("input[name='phoneNumber']").val()); $.ajax({ type: "GET", url: ctx + "login/sendMessageCode", data: { phoneNumber: phoneNumber }, success: function (r) { if (r.code == web_status.SUCCESS) { layer.alert("恭喜你,您的验证码发送成功!", { icon: 1, title: "系统提示" }, function(index) { //关闭弹窗 layer.close(index); } ) } else { // 显示错误信息 layer.alert(r.msg || "发送验证码失败", { icon: 2, title: "系统提示" }); } } }) };