1 <script>
2 /**
3 * 表单的校验
4 * 1. 用户名:单词字符,8-20位长度
5 * 2. 密码: 数字字符, 8-20位长度
6 * 3. email:邮件格式
7 * 4. 姓名:非空
8 * 5. 手机号:手机号格式
9 */
10 //校验用户名
11 //用户名:单词字符,8-20位长度
12 function checkUserName() {
13 //1.获取用户名值
14 var username = $("#username").val();
15 //2.定义正则
16 var reg_username = /^\w{8,20}$/;
17 //3.判断,给出提示信息
18 var flag = reg_username.test(username);
19 if (flag) {
20 //用户名合法
21 $("#username").css("border","");
22 } else {
23 //用户名非法,加红色的边框
24 $("#username").css("border", "1px solid red");
25 }
26 return flag;
27 }
28 //校验密码
29 function checkPassword() {
30 var password = $("#password").val();
31 var reg_password = /^\w{8,20}$/;
32 var flag = reg_password.test(password);
33 if (flag) {
34 $("#password").css("border","");
35 } else {
36 $("#password").css("border", "1px solid red");
37 }
38 return flag;
39 }
40 //校验email
41 function checkEmail(){
42 //1.获取用户邮箱
43 var email = $("#email").val();
44 const reg_Email = /^[a-zA-Z0-9_.-]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/
45 var flag=reg_Email.test(email);
46 if (flag) {
47 //密码合法
48 $("#email").css("border","");
49 } else {
50 //密码非法,加红色的边框
51 console.log(flag);
52 $("#email").css("border", "1px solid red");
53 }
54 return flag;
55 }
56 //校验电话号码
57 function checkPhone(){
58 var phone = $("#telephone").val();
59 var reg_tele= /^[1][3,4,5,7,8][0-9]{9}$/;
60 var flag=reg_tele.test(phone);
61 if (flag) {
62 $("#telephone").css("border","");
63 } else {
64 console.log(flag);
65 $("#telephone").css("border", "1px solid red");
66 }
67 return flag;
68
69 }
70 //校验姓名
71 function checkName(){
72 var name = $("#name").val();
73 var reg_name= /^\S{2,5}$/;
74 var flag=reg_name.test(name);
75 if (flag){
76 $("#name").css("border","1px solid red");
77 }else {
78 $("#name").css("border","");
79 }
80 }
81 //调用验证规则
82 $(function () {
83 //当表单提交时调用所有的校验方法
84 $("#registerForm").submit(function () {
85 //调用方法
86 return checkUserName() && checkPassword() && checkEmail() && checkPhone() && checkName();
87 //如果匿名的方法没有返回值,或者返回值为true时,则表单提交,如果返回false,则表单不提交
88 })
89 //当某一个组件失去焦点时,调用对应的校验方法
90 //此处传递的是function对象,不要加括号
91 $("#username").blur(checkUserName);
92 $("#password").blur(checkPassword);
93 $("#email").blur(checkEmail);
94 $("#telephone").blur(checkPhone);
95 $("#name").blur(checkName);
96 })
97
98 </script>