第十七篇 JS验证form表单
JS验证form表单
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>JS验证form表单,使用正则表达式</title>
</head>
<body>
<h3>js验证表单</h3> <form action="#" method="post">
<p>
用户名: <input type="text"/>
</p>
<p>
<!--letter-spacing 给它添加间距,这里用的是em单位 它比px大-->
<span style="letter-spacing: 1em;">密</span>码: <input type="password"/>
</p>
<p>
<input type="submit" value="提交"/>
</p>
</form>
</body>
</html>
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>JS验证form表单,使用正则表达式</title>
</head>
<body>
<h3>js验证表单</h3>
<!-- form表单里加了一个onsubmit事件,当点击提交按钮就触发这个事件 -->
<form action="#" method="post" onsubmit="return myform()">
<p>
用户名: <input type="text"/>
<!--格式错误,用span做提示-->
<span style="color:red;font-size: 12px;display: none;" class="tishi">
必须两位字符及以上
</span>
</p>
<p>
<!--letter-spacing 给它添加间距,这里用的是em单位 它比px大-->
<span style="letter-spacing: 1em;">密</span>码: <input type="password"/>
<!--格式错误,用span做提示-->
<span style="color:red;font-size: 12px;display: none;" class="tishi">
密码只能由6-30位数字和字母组成
</span>
</p>
<p>
<input type="submit" value="提交"/>
</p>
</form>
<script>
//forms 是找到当前页面所有form表单,而数组下标[0] 是找到第一个form
var form = document.forms[0];
//表单获取到了,我们先用正则来写格式规范
//var是关键字,用来声明变量的
var yonghu = /^[A-Za-z0-9_\-\-\u4e00-\u9fa5]{2,}$/;
//yonghu,它的正则表达意思是,必须是数字或者大小写26位字母,或者中文,后面一串就是支持汉字的意思,花括号里的2,是指必须两位及以上字符
var mima = /^[0-9a-zA-Z]{6,30}$/;
//密码,这里面很简单,只能是数字或者26位大小写字母,花括号里的意思是字符长度为最小6位,最大30位
//我们用 elements来获取form表单下的input select textarea这一类,属于form表单的元素
function yanzheng(){
//先隐藏它,这样它显示了之后,输入正确再次点击,即可隐藏
document.getElementsByClassName('tishi')[0].style.display="none";
document.getElementsByClassName('tishi')[1].style.display="none";
//正则判断form下第一个input,如果错误返回一个假,并给出提示,
if(!yonghu.test(form.elements[0].value)){
//出现提示!
document.getElementsByClassName('tishi')[0].style.display="inline";
return false;
}else if(!mima.test(form.elements[1].value)){
//出现提示!
document.getElementsByClassName('tishi')[1].style.display="inline";
return false;
}
//如果上面的判断为假,则返回false,上面的判断都正确,就直接跳过if里的代码,执行下面的 true
return true;
}
function myform(){
//判断 yanzheng函数,它如果返回过来的是true,我们就判断,是真就返回真
if(yanzheng())
return true; //如果yanzheng函数返回的是false则不会执行上面的 true,就会执行线面的false,表单就无法提交
return false;
}
</script>
</body>
</html>
第十七篇 JS验证form表单的更多相关文章
- js验证form表单示例
js验证form表单示例 检测测试了js表单验证,无jQuery(简单的功能有时无需jQuery版本) js代码如下: <script type="text/javascript& ...
- js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题
js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题 js模拟form表单提交数据源码: /** * js模拟form表单提交 * @param ...
- JS 提交form表单
源码实例一:javascript 页面加裁时自动提交表单Form表单:<form method="post" id="myform" action=&qu ...
- js重置form表单
CreateTime--2017年7月19日10:37:11Author:Marydon js重置form表单 需要使用的方法:reset() 示例: HTML部分 <form id=&qu ...
- js阻止form表单重复提交
防止表单重复提交的方法总体来说有两种,一种是在js中阻止重复提交:另一种是在后台利用token令牌实现,大致思路是生成一个随机码放到session和form表单的隐藏输入框中,提交表单时两者对比,表单 ...
- 使用js提交form表单的两种方法
提交form表单的时候瑶族一些简单的验证,验证完后才能提交,避免无效提交. 1.当输入用户名和密码为空的时候,需要判断.这时候就用到了校验用户名和密码,这个需要在前端页面写:有两种方法,一种是用sub ...
- jQuery.Validate.js验证大表单的优化
最近在项目中有遇到一个Form表单中有200多个标签.在提交表单时网页会出现等待时间很长,甚至会出现网页奔溃的情况. 主要的原因是因为在使用jQuery.Validate.js进行Form验证的时候会 ...
- Js 提交 form 表单
本文主要讲如何使用Js提交表单,在使用ajax进行异步验证的多数情况下,需要使用Js提交表单,以下简单说几种提交表单的方式: 1.document.getElementById("formI ...
- 参数传递的四种形式----- URL,超链接,js,form表单
什么时候用GET, 查,删, 什么时候用POST,增,改 (特列:登陆用Post,因为不能让用户名和密码显示在URL上) 4种get传参方式 <html xmlns="http:/ ...
随机推荐
- Oracle 11g的日志路径
Oracle数据库的最常用问题定位日志是alert日志,Oracle数据库的日志文件alert_$ORACLE_SID.log记录了重作日志的转换,数据库启动和关闭,数据库结构的改变,回退段的修改,死 ...
- Linux的组成
1.内核:是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序. 2.Shell:是系统的用户界面,提供了用户和内核进行交互操作的一种接口.它接收用户输入的命令并把它送入内核去执行,是一个 ...
- 机器学习之SVM算法
1.知识点 """ SVM,也称支持向量机:其优化核心为求取点到平面的距离最大化,主要是解决二分类问题 y = wx+b ,且 yi * y(i) >0 恒成立 思 ...
- tensorflow实现线性回归、以及模型保存与加载
内容:包含tensorflow变量作用域.tensorboard收集.模型保存与加载.自定义命令行参数 1.知识点 """ 1.训练过程: 1.准备好特征和目标值 2.建 ...
- flutter 切换tab后保留tab状态
前言 最近在用flutter写一个小项目,在写主页面(底部导航栏+子页面)时遇到的一个问题:当点击底部item切换到另一页面, 再返回此页面时会重走它的initState方法(我们一般在initSta ...
- Mysql强制修改密码
windows: 1,停止MYSQL服务,CMD打开DOS窗口,输入 net stop mysql 2,在CMD命令行窗口,进入MYSQL安装目录 比如E:\Program Files\MySQL\M ...
- stegsolve---图片隐写查看器
今天做CTF隐写术的题偶然发现一隐写图片查看的神器------stegsolve,分享给大家 stegsolve下载地址:http://www.caesum.com/handbook/Stegsolv ...
- Kafka-manager安装部署
一.kafka-manager 简介 为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager.这个管理工具可以很 ...
- SqlServer:SqlServer(数据库备份,数据文件迁移,增加数据库文件组,递归查询一周报送情况,查询近X天未报送单位,截断数据库日志,复制单个或多个数据库表到另一个数据库 )
1.数据备份 ) ) ) )),'-','') ) SET @savePath = 'f:/DatabaseBackup/' DECLARE My_Cursor CURSOR FOR ( select ...
- Bat:IP切换,内外网切换,路由设置内外网同时连接
1.IP切换: @echo off ::双冒号表示注释,注释只能单独一行写,@表示不让执行的命令又显示在屏幕上 cls ::清屏 color c ::设置显示字体颜色 set IP=10.10.17. ...