(function () { //检测特殊字符 function checkStr(str){ var pattern = new RegExp("[`~!@#$^&*()=|{}':;',\\[\\].<>《》/?~!@#¥……&*()——|{}【】‘;:”“'。,、?\"]"); if(pattern.test(str)){ return true; } return false } //检测错误开关 var phoneArr = ['请输入常用手机号','请输入正确的手机号码','您输入的手机号已被注册']; //3 var phoneCheck = 0; var firstArr = ['密码不能为空','密码不能包含特殊字符','请输入6~16位,字母加数字的密码','两次输入的密码不一致']; //4 var passFirstCheck = 0; //首次密码检验 var secondArr = ['首次密码输入存在特殊字符','两次输入的密码不一致','密码不能为空']; //3 var passSecondCheck = 2; //再次检测密码 // 检测手机号输入 $("#rpPhone").blur(function () { var val = $("#rpPhone").val(); var isPhone = /^[1][3-9][0-9]{9}$/.test(val); if (val == "") { showError("rpPhone", "请输入常用手机号"); phoneCheck = 0; return false; } if (!isPhone) { showError("rpPhone", "请输入正确的手机号码"); phoneCheck = 1; return false; }else { // 检测账号是否曾经注册过 rdcp.request("!Manage/User/~query/USER.GET_USER_MOBILE_PHONE", { 'mobile_phone': val }, function (data) { if ((data.header.code == 0) && (data.body.rows.length > 0)) { showTip("rpPhone", "您输入的手机号已被注册") phoneCheck = 2; } else { phoneCheck = 3; rightTip("rpPhone"); } }, {mask: false}) } }); $('#rpScode').on('input',function () { if($(this).val()==''){ showError("rpScode", "请输入验证码") }else{ hideIt('rpScode'); } }); // 点击获取验证码 $("#personalGetAuthCode").click(function () { var telephone = $("#rpPhone").val(); if (phoneCheck !== 3) { alError("rpPhone",phoneArr[phoneCheck]); return false; } if (telephone != "") { if (!(/^[1][3-9][0-9]{9}$/.test(telephone))) { showError("rpPhone", "请输入正确的手机号码") return false; } else { settime(this); rdcp.request("!Manage/User/~java/User.sendCode", { 'phone': telephone, 'type': "10003" }, function (data) { if (data.header.code == 0) { showTip("rpScode", "验证码已经发送到你手机上,请注意查收"); } else if (data.header.code == 4) { showTip("rpScode", data.header.message); } else { showTip("rpScode", "获取验证码失败"); } }, {mask: false}) } } }); // 密码强度检测 $("#rpPwd").blur(function () { var c = $("#rpPwd").val(); console.log(c) var pwdReg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,20}$/.test(c);//6到16位数字加字母组合 if (c == "") { showError("rpPwd", "密码不能为空"); passFirstCheck = 0; }else if(checkStr(c)){ showError("rpPwd", "密码不能包含特殊字符"); passFirstCheck = 1; } else if (!pwdReg) { showError("rpPwd", "请输入至少8位的数字和字母登录密码"); hideIt("rpConfirmPwd"); passFirstCheck = 2; } else if ((c != $("#rpConfirmPwd").val()) && $("#rpConfirmPwd").val() != "") { showError("rpConfirmPwd", "两次输入的密码不一致"); passFirstCheck = 4; } else if (pwdReg && c != "") { rightTip("rpPwd"); passFirstCheck = 4; } if (pwdReg && c != "" && (c == $("#rpConfirmPwd").val())) { rightTip("rpPwd"); rightTip("rpConfirmPwd"); passFirstCheck = 4; } if (c.length < 9) { $(".com-intensity li:eq(0)").addClass("select").siblings().removeClass("select"); } else if (c.length < 12) { $(".com-intensity li:eq(1)").addClass("select").siblings().removeClass("select"); } else { $(".com-intensity li:eq(2)").addClass("select").siblings().removeClass("select"); } }); //确认两次输入的密码是否相同 $("#rpConfirmPwd").blur(function () { var v = $("#rpConfirmPwd").val(); var c = $("#rpPwd").val(); //检测特殊字符给进入 if(checkStr(c)){ showError("rpConfirmPwd", "首次密码输入存在特殊字符"); passSecondCheck = 0; return false; } if (v != "" && c != "") { if (v != c) { showError("rpConfirmPwd", "两次输入的密码不一致"); passSecondCheck = 1; return false; } else { passSecondCheck = 3; rightTip("rpConfirmPwd") } } else { passSecondCheck = 2; showError("rpConfirmPwd", "密码不能为空") } }); // 检测邮箱是否输入正确 $("#rpEmail").blur(function () { var v = $("#rpEmail").val(); var isEmail = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(v); //isEmail = /^\S+@\w+\.\w+$/.test(v); if (!isEmail) { showError("rpEmail", "请输入正确的邮箱格式") } else { rightTip("rpEmail"); } }); // 是否同意森锐声明确认框 $("#anonymous").click(function () { if ($(this).children('div').hasClass('select-NO')) { $(this).children('div').removeClass('select-NO').addClass('select'); } else { $(this).children('div').removeClass('select').addClass('select-NO'); } }); //提交注册 $("#personalRegister").click(function () { $(".agreeText").css("display", "none"); if(phoneCheck !== 3){ console.log(1) alertMsg("提示", "注册失败:" + phoneArr[phoneCheck]); return false; }else if(passFirstCheck !== 4){ console.log(2) alertMsg("提示", "注册失败:" + firstArr[passFirstCheck]); return false; }else if(passSecondCheck !== 3){ console.log(3) alertMsg("提示", "注册失败:" + secondArr[passSecondCheck]); return false; } //检测有无选中协议 if ($("#anonymous").children('div').hasClass("select")) { rdcp.request("!Manage/User/~java/User.personalRegister", { 'phone': $("#rpPhone").val(), //手机号 'SMSCode': $("#rpScode").val(), //验证码 'pwd': $("#rpPwd").val(), //首次密码 'confirmPwd': $("#rpConfirmPwd").val(), //确认密码 'type_id': 1 }, function (data) { //请求成功后的回调函数 if (data.header.code == 0) { alertMsg("提示", "注册成功!"); setTimeout(function () { rdcp.go("!Front/User/~view/login"); }, 1500); }else if (data.header.code == 2003) { showError("rpScode", "验证码不正确,请重试"); return false; } else if (data.header.code == 2004) { showError("rpScode", "验证码过期,请重试"); return false; } else { alertMsg("提示", data.header.message); } }, { mask: false }) } else { // 没有点击同意协议则弹出提示 $(".agreeText").css("display", "block"); return false; } }); $("#ID_readXy").click(function () { $("#ID_srxy").show() }) $(".protocol-button button").click(function () { $("#ID_srxy").hide(); $("#anonymous").children('div').removeClass('select-NO').addClass('select'); }) $(".ui-dialog-close").click(function () { $("#ID_srxy").hide(); }) })(); // 发送短信验证码倒计时 var countdown = 60; var teText = document.getElementById("rpPhone").value; function settime(obj) { if (countdown == 0) { obj.removeAttribute("disabled"); obj.value = "获取验证码"; countdown = 60; return; } else { obj.setAttribute("disabled", true); obj.value = "重新发送(" + countdown + ")"; countdown--; } setTimeout(function () { settime(obj) } , 1000) }