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. 安装rose遇到的问题

    将rose文件夹里面的rose.rar直接解压到rose安装目录里面的common文件夹中 安装教程与问题解决连接https://blog.csdn.net/Farewell_w/article/de ...

  2. PyQt(Python+Qt)学习随笔:Designer中的QDialogButtonBox的orientation和centerButtons属性

    orientation属性 orientation属性表示QDialogButtonBox的方向,缺省情况下,方向为水平方向(值为Qt.Horizontal),表示QDialogButtonBox中的 ...

  3. CTF流量分析题大全(掘安攻防平台)

    突然想做一下流量分析题,记得掘安攻防实验室上面有很多的流量分析题目,故做之 流量分析题一般使用的都是wireshark,(流量分析工具中的王牌 夺取阿富汗 说了分析http头,所以直接过滤http协议 ...

  4. 性能测试学习之路 (一)认识jmeter(性能测试流程 && 性能测试通过标准 &&jmeter体系结构)

    性能测试是通过自动化的测试工具模拟多种正常.峰值以及异常负载条件来对系统的各项性能指标进行测试. 1 性能测试技能树 性能测试是一项综合性的工作,致力于暴露性能问题,评估系统性能趋势.性能测试工作实质 ...

  5. Java对象操作工具

    对象复制(反射法) public static void copyProp(Object from, Object to, String... filterProp) { HashSet<Str ...

  6. socket ThreadingTCPServer学习笔记

    文件上传#服务端 while True: conn,address = sk.accept() conn.sendall(bytes('欢迎你小sb',encoding='utf-8')) str_s ...

  7. JavaSE17-File&递归&字节流

    1.File类 1.1 File类概述和构造方法 File类介绍 它是文件和目录路径名的抽象表示 文件和目录是可以通过File封装成对象的 对于File而言,其封装的并不是一个真正存在的文件,仅仅是一 ...

  8. iOS10 App适配权限 Push Notifications 字体Frame 遇到的坑!!!!

    添加配置权限 <!-- 相册 --> <key>NSPhotoLibraryUsageDescription</key> <string>"x ...

  9. Kubernetes【K8S】(三):资源清单

    K8S中的资源 K8S中所有的内容都抽象为资源,资源实例化之后叫做对象.一般使用yaml格式的文件来创建符合我们预期的pod,这样的yaml文件我们一般成为资源清单. 名称空间级资源 工作负载型资源( ...

  10. java.net.BindException:Problem binding to [hostname:8088]地址已在使用

    异常提示端口号被占用 查找被占用的端口 netstat -tln netstat -tln | grep 8083 netstat -tln ## 查看端口使用情况,而netstat -tln | g ...