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:表单校验(获取元素、事件)的更多相关文章

  1. Vue.js表单校验;动画指令;避免内存泄露。

    Vue.js表单校验: 动画指令:创建自定义的滚动指令. 避免内存泄露. 避免内存泄露 在单页面应用开发时SPA,用户无需刷新浏览器.所以javascript应用需要自行清理组件来防止内存占用不断增长 ...

  2. 【转】vue.js表单校验详解

    官方文档:https://monterail.github.io/vuelidate/ https://github.com/monterail/vuelidate 1.npm安装vue-valida ...

  3. js-动态表单校验-吐血总结最近遇到的变态表单校验2---element+原生

    上一部分总结了基础常用的js表单校验,包括原生以及框架,下面来总结这一个月涉及到的动态校验: 动态表单校验大致分为三种情况: 1. 首先是固定校验规则,但是表单组件是动态生成的,例如:在表单或者表格里 ...

  4. vue.js基础知识篇(7):表单校验详解

    目录 网盘 第12章:表单校验 1.npm安装vue-validator $ npm install vue-validator 代码示例: var Vue=require("vue&quo ...

  5. Vee-validate 父组件获取子组件表单校验结果

    vee-validate 是为 Vue.js 量身打造的表单校验框架,允许您校验输入的内容并显示对应的错误提示信息.它内置了很多常见的校验规则,可以组合使用多种校验规则,大部分场景只需要配置就能实现开 ...

  6. js监听input等表单输入框的变化事件oninput

    js监听input等表单输入框的变化事件oninput,手机页面开发中使用到文本框textarea输入字符监听文本框变化计算还可以输入多少字符,如果使用onkeyup的话是无法监听到输入法输入的文本变 ...

  7. day32(表单校验js和jquery表单校验)

    校验用户名.密码.密码一直性. <style> .error { color: red } .success { color: green } </style> <scr ...

  8. Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验

    vee-validate 是为 Vue.js 量身打造的表单校验框架,允许您校验输入的内容并显示对应的错误提示信息.它内置了很多常见的校验规则,可以组合使用多种校验规则,大部分场景只需要配置就能实现开 ...

  9. 表单校验--js部分

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...

随机推荐

  1. 当vue.js与其他js文件同时引用导致页面不显示的问题

    作为一个萌新,昨天学习的过程中遇到了vuejs与其他js在共同页面时引用时冲突的问题 具体如下 虽然注意到了前后顺序,但是页面还是出不来东西 我知道现实开发中可能不是这么引用,但是学习中是这么引入的, ...

  2. YoyoGo微服务框架入门系列-快速编写WEB API

    前言 YoyoGo是一个使用Golang编写的一个简单.轻量.快速.基于依赖注入的微服务框架,目前依然在研发阶段,欢迎Star以及一起参与到框架的研发 GitHub地址:https://github. ...

  3. html基础标签用法

    head title 行级双 网页标题标签 meta 单 存放网页重要信息,字符集,搜索索引,简介等(不显示) a 标签行内双标签 href="跳转路径", (JavaScript ...

  4. NOIp2020游记

    Day 1 考点还是在南航,第三次去已经没有什么新鲜感了,满脑子都是NOIp能不能考好.考前奶了一波这次必考最短路,于是在试机的时候打了一遍Dij和SPFA的板子,信心满满的上场了. 考试右后方是Ki ...

  5. 第10章 Python的模块和包

    前面几章介绍的Python基础知识,相关案例都是以单源代码文件为例来说明的,这种单源代码文件在Python中就是模块,每个模块文件都可以被其他应用导入,Python正是通过模块导入技术来实现很灵活的功 ...

  6. 查询满足条件的最新数据(逐步优化,mysql、达梦数据库)

    1.条件:报警信息表sensor_warning 2.需求: 查询当前车厢的.不同设备的.所有处理未完成的.不同报警原因的.时间最新的数据集合,最后按设备id或报警时间排序 3.原始sql,不满足实际 ...

  7. linux c++ 内存泄漏检测工具:AddressSanitizer(ASan)

    1.介绍 AddressSanitizer(ASan),该工具为gcc自带,4.8以上版本均可以使用. 2.使用 编译的方式很简单,只需要添加 -fsanitize=address -g 即可,如 g ...

  8. 落谷 P2401 不等数列

    题目链接. Solution 状态设计 设 \(f_{i, j}\) 为 \(1\) 到 \(i\) 的排列,其中有 \(j\) 个 \(\text{'<'}\) 的方案数. 状态转移 尝试从 ...

  9. Codeforces Edu Round 53 A-D

    A. Diverse Substring 找普遍性(特殊解即可). 最简单的便是存在一个区间\([i, i + 1] (1 <= i < n)\),且$str[i] $ $ != str[ ...

  10. 【NOI2019】弹跳(KDT优化建图)

    Description 平面上有 \(n\) 个点,分布在 \(w \times h\) 的网格上.有 \(m\) 个弹跳装置,由一个六元组描述.第 \(i\) 个装置有参数:\((p_i, t_i, ...