js:表单校验(获取元素、事件)
1、表单校验步骤
(1)确定事件(submit事件),创建一个函数并和该事件绑定。
(2)书写函数对输入的数据是否合法进行校验(需要设定ID并通过ID来获取用户输入的数据的值)。
(3)输入的信息合法,可以正常提交;不合法的话,不能提交用户信息并给出提示信息。
2、校验函数
(1)非空校验:
通过ID获取值,对是否为空进行校验。
复制代码
1 var uValue = document.getElementById("user").value;
2 if(uValue""){
3 alert("用户名不能为空!");
4 return false;
5 }
6
7 var pValue = document.getElementById("password").value;
8 if(pValue""){
9 alert("密码不能为空!");
10 return false;
11 }
复制代码
相应的表单中要设置ID属性,以便通过ID获取表单中的数据。
复制代码
1
2
3 用户名
4
5
6
7
8
9
10
11
12 密码
13
14
15
16
17
复制代码
(2)确认密码校验:
1 var rpValue = document.getElementById("repassword").value;
2 if(rpValue!=pValue){
3 alert("两次密码输入不一致!");
4 return false;
5 }
(3)邮箱格式校验(正则表达式:https://www.cnblogs.com/zhai1997/p/11354683.html):
1 var eValue = document.getElementById("email").value;
2 if(!/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/.test(eValue)){
3 alert("邮箱格式不正确!");
4 return false;
5 }
完整代码
复制代码
1
2
3
4
5 注册页面
6
33
34
35
36
37 <td height="600px" ">
38
39
40
41
44
47
48
49
50
53
56
57
58
59
62
65
66
67
68
71
74
75
76
77
80
83
84
85
86
89
93
94
95
96
99
102
103
104
105
110
111
42 用户名 43 |
45 46 |
51 密码 52 |
54 55 |
60 确认密码 61 |
63 64 |
69 Email 70 |
72 73 |
78 姓名 79 |
81 82 |
87 性别 88 |
90 男 91 女 92 |
97 出生日期 98 |
100 101 |
106 107 108 109 |
|
112
113
114
115
116
117
复制代码
4、改进
以上方法只有在提交的时候才能发现数据的错误,对于用户来说很不方便,以下的改进代码可以增加页面的用户友好性:
复制代码
1
2
3
4
5 注册页面
6
20
21
22
23
24 <td height="600px" ">
25
26
27
28
31
37
38
39
40
43
49
50
51
52
55
58
59
60
61
64
67
68
69
70
73
76
77
78
79
82
86
87
88
89
92
95
96
97
98
103
104
29 用户名 30 |
32 <input type="text" name="user" size="34px" id="user" 33 onfocus="showTips('user','用户名必填!')" 34 onblur="check('user','用户名不能为空!')"/> 35 36 |
41 密码 42 |
44 <input type="password" name="password" size="34px" id="password" 45 onfocus="showTips('password','密码必填')" 46 onblur="check('password','密码不能为空!')"/> 47 48 |
53 确认密码 54 |
56 57 |
62 Email 63 |
65 66 |
71 姓名 72 |
74 75 |
80 性别 81 |
83 男 84 女 85 |
90 出生日期 91 |
93 94 |
99 100 101 102 |
|
105
106
107
108
109
110
js:表单校验(获取元素、事件)的更多相关文章
- Vue.js表单校验;动画指令;避免内存泄露。
Vue.js表单校验: 动画指令:创建自定义的滚动指令. 避免内存泄露. 避免内存泄露 在单页面应用开发时SPA,用户无需刷新浏览器.所以javascript应用需要自行清理组件来防止内存占用不断增长 ...
- 【转】vue.js表单校验详解
官方文档:https://monterail.github.io/vuelidate/ https://github.com/monterail/vuelidate 1.npm安装vue-valida ...
- js-动态表单校验-吐血总结最近遇到的变态表单校验2---element+原生
上一部分总结了基础常用的js表单校验,包括原生以及框架,下面来总结这一个月涉及到的动态校验: 动态表单校验大致分为三种情况: 1. 首先是固定校验规则,但是表单组件是动态生成的,例如:在表单或者表格里 ...
- vue.js基础知识篇(7):表单校验详解
目录 网盘 第12章:表单校验 1.npm安装vue-validator $ npm install vue-validator 代码示例: var Vue=require("vue&quo ...
- Vee-validate 父组件获取子组件表单校验结果
vee-validate 是为 Vue.js 量身打造的表单校验框架,允许您校验输入的内容并显示对应的错误提示信息.它内置了很多常见的校验规则,可以组合使用多种校验规则,大部分场景只需要配置就能实现开 ...
- js监听input等表单输入框的变化事件oninput
js监听input等表单输入框的变化事件oninput,手机页面开发中使用到文本框textarea输入字符监听文本框变化计算还可以输入多少字符,如果使用onkeyup的话是无法监听到输入法输入的文本变 ...
- day32(表单校验js和jquery表单校验)
校验用户名.密码.密码一直性. <style> .error { color: red } .success { color: green } </style> <scr ...
- Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
vee-validate 是为 Vue.js 量身打造的表单校验框架,允许您校验输入的内容并显示对应的错误提示信息.它内置了很多常见的校验规则,可以组合使用多种校验规则,大部分场景只需要配置就能实现开 ...
- 表单校验--js部分
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...
随机推荐
- 当vue.js与其他js文件同时引用导致页面不显示的问题
作为一个萌新,昨天学习的过程中遇到了vuejs与其他js在共同页面时引用时冲突的问题 具体如下 虽然注意到了前后顺序,但是页面还是出不来东西 我知道现实开发中可能不是这么引用,但是学习中是这么引入的, ...
- YoyoGo微服务框架入门系列-快速编写WEB API
前言 YoyoGo是一个使用Golang编写的一个简单.轻量.快速.基于依赖注入的微服务框架,目前依然在研发阶段,欢迎Star以及一起参与到框架的研发 GitHub地址:https://github. ...
- html基础标签用法
head title 行级双 网页标题标签 meta 单 存放网页重要信息,字符集,搜索索引,简介等(不显示) a 标签行内双标签 href="跳转路径", (JavaScript ...
- NOIp2020游记
Day 1 考点还是在南航,第三次去已经没有什么新鲜感了,满脑子都是NOIp能不能考好.考前奶了一波这次必考最短路,于是在试机的时候打了一遍Dij和SPFA的板子,信心满满的上场了. 考试右后方是Ki ...
- 第10章 Python的模块和包
前面几章介绍的Python基础知识,相关案例都是以单源代码文件为例来说明的,这种单源代码文件在Python中就是模块,每个模块文件都可以被其他应用导入,Python正是通过模块导入技术来实现很灵活的功 ...
- 查询满足条件的最新数据(逐步优化,mysql、达梦数据库)
1.条件:报警信息表sensor_warning 2.需求: 查询当前车厢的.不同设备的.所有处理未完成的.不同报警原因的.时间最新的数据集合,最后按设备id或报警时间排序 3.原始sql,不满足实际 ...
- linux c++ 内存泄漏检测工具:AddressSanitizer(ASan)
1.介绍 AddressSanitizer(ASan),该工具为gcc自带,4.8以上版本均可以使用. 2.使用 编译的方式很简单,只需要添加 -fsanitize=address -g 即可,如 g ...
- 落谷 P2401 不等数列
题目链接. Solution 状态设计 设 \(f_{i, j}\) 为 \(1\) 到 \(i\) 的排列,其中有 \(j\) 个 \(\text{'<'}\) 的方案数. 状态转移 尝试从 ...
- Codeforces Edu Round 53 A-D
A. Diverse Substring 找普遍性(特殊解即可). 最简单的便是存在一个区间\([i, i + 1] (1 <= i < n)\),且$str[i] $ $ != str[ ...
- 【NOI2019】弹跳(KDT优化建图)
Description 平面上有 \(n\) 个点,分布在 \(w \times h\) 的网格上.有 \(m\) 个弹跳装置,由一个六元组描述.第 \(i\) 个装置有参数:\((p_i, t_i, ...