表单校验--js部分
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<title>表单校验。</title>
</head>
<body> <!--
表单校验。
--> <script type="text/javascript">
/*
//校验用户名
function checkUser(){
var flag; var oUserNode = document.getElementsByName("user")[0]; var name = oUserNode.value; //定义正则表达式的三种方式
//这里的i是不区分大小写,同时还有g代表可以进行全局匹配,m代表可以多行匹配
var reg = new RegExp("^[a-z]{4}$","i");//必须是四个字母。 // reg = new RegExp("^\\d{4}$");// 必须是四个数字。
// reg = /^\d{4}$/; var oSpanNode = document.getElementById("userspan"); // if(name=="abc"){
if(reg.test(name)){
oSpanNode.innerHTML = "用户名正确".fontcolor("green");
flag = true;
}else{
oSpanNode.innerHTML = "用户名错误".fontcolor("red");
flag = false;
} return flag;
}
*/ /*
* 发现很多框的校验除了几个内容不同外,校验的过程是一样的。
* 所以进行了代码的提取。
*
*/ function check(name,reg,spanId,okinfo,errinfo){
var flag;
var val = document.getElementsByName(name)[0].value; var oSpanNode = document.getElementById(spanId); if(reg.test(val)){
oSpanNode.innerHTML = okinfo.fontcolor("green");
flag = true;
}else{
oSpanNode.innerHTML = errinfo.fontcolor("red");
flag = false;
}
return flag;
} //校验用户名。
function checkUser(){ var reg = /^[a-z]{4}$/i;
return check("user",reg,"userspan","用户名正确","用户名错误"); } //校验密码;
function checkPsw(){
//这里只是简单使用Lee正则表达式
var reg = /^\d{4}$/;
return check("psw",reg,"pswspan","密码格式正确","密码格式错误");
} //校验确定密码。只要和密码一致即可。
function checkRepsw(){ var flag;
//获取密码框内容。
var pass = document.getElementsByName("psw")[0].value; //获取确认密码框内容。
var repass = document.getElementsByName("repsw")[0].value; //获取确认密码的span区域。
var oSpanNode = document.getElementById("repswspan"); if(pass==repass){
oSpanNode.innerHTML = "两次密码一致".fontcolor("green");
flag = true;
}else{
oSpanNode.innerHTML = "两次密码不一致".fontcolor("red");
flag = false;
}
return flag;
} //校验邮件
function checkMail(){
var reg = /^\w+@\w+(\.\w+)+$/i;
return check("mail",reg,"mailspan","邮件地址正确","邮件地址错误");
} // 提交事件处理。
function checkForm(){
// alert(checkUser() +"--"+ checkPsw() +"--"+ checkRepsw() +"--"+ checkMail());
if(checkUser() && checkPsw() && checkRepsw() && checkMail())
return true;
return false;
} //自定义的提交方法
function mySubmit(){ var oFormNode = document.getElementById("userinfo"); oFormNode.submit(); }
</script> <form id="userinfo" onsubmit="return checkForm()"> 用户名称:<input type="text" name="user" onblur="checkUser()" />
<span id="userspan"></span>
<br/> 输入密码:<input type="text" name="psw" onblur="checkPsw()" />
<span id="pswspan"></span>
<br/> 确定密码:<input type="text" name="repsw" onblur="checkRepsw()" />
<span id="repswspan"></span>
<br/> 邮件地址:<input type="text" name="mail" onblur="checkMail()" />
<span id="mailspan"></span>
<br/> <input type="submit" value="提交数据" />
</form>
<hr/>
<!--自定提交按钮-->
<input type="button" value="我的提交" onclick="mySubmit()" /> </body>
</html>
表单校验--js部分的更多相关文章
- day32(表单校验js和jquery表单校验)
校验用户名.密码.密码一直性. <style> .error { color: red } .success { color: green } </style> <scr ...
- Struts2——(6)表单校验
一.表单校验 js,jquery是客户端校验,今天要说的是客户端校验. 禁止js,或者机器代码会破坏客户端校验,所以客户端校验相对不安全. 服务器端校验是基于java代码在服务器端进行校验,特点是相应 ...
- vue.js基础知识篇(7):表单校验详解
目录 网盘 第12章:表单校验 1.npm安装vue-validator $ npm install vue-validator 代码示例: var Vue=require("vue&quo ...
- Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
vee-validate 是为 Vue.js 量身打造的表单校验框架,允许您校验输入的内容并显示对应的错误提示信息.它内置了很多常见的校验规则,可以组合使用多种校验规则,大部分场景只需要配置就能实现开 ...
- Vue.js表单校验;动画指令;避免内存泄露。
Vue.js表单校验: 动画指令:创建自定义的滚动指令. 避免内存泄露. 避免内存泄露 在单页面应用开发时SPA,用户无需刷新浏览器.所以javascript应用需要自行清理组件来防止内存占用不断增长 ...
- 【转】vue.js表单校验详解
官方文档:https://monterail.github.io/vuelidate/ https://github.com/monterail/vuelidate 1.npm安装vue-valida ...
- js:表单校验(获取元素、事件)
1.表单校验步骤 (1)确定事件(submit事件),创建一个函数并和该事件绑定. (2)书写函数对输入的数据是否合法进行校验(需要设定ID并通过ID来获取用户输入的数据的值). (3)输入的信息合法 ...
- 利用jquery.validate以及bootstrap的tooltip开发气泡式的表单校验组件
表单校验是页面开发中非常常见的一类需求,相信每个前端开发人员都有这方面的经验.网上有很多成熟的表单校验框架,虽然按照它们默认的设计,用起来没有多大的问题,但是在实际工作中,表单校验有可能有比较复杂的个 ...
- AngularJS 1.2.x 学习笔记(表单校验篇)
https://my.oschina.net/cokolin/blog/526911 摘要: 本文首发于 blog.csdn.net/vipshop_ebs/article/details/39472 ...
随机推荐
- Python生成器/推导式/生成器表达式
一 生成器 生成器的本质就是迭代器 生成器的特点和迭代器一样,取值方式和迭代器一样(__next__(), send(): 给上一个yield传值) 生成器一般由生成器函数或者生成器表达式来创 ...
- JS播放声音 兼容所有浏览器
JS播放声音 兼容所有浏览器 <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http ...
- Winform绑定图片的三种方式
1.绝对路径: this.pictureBox2.Image=Image.FromFile("D:\\001.jpg"); 2.相对路径: Application.StartupP ...
- java中的报错机制
异常:Exception,程序运行过程中因为一些原因,使得程序无法运行下去 注意:在程序能够运行起来的情况,不是程序编译通不过 举例:读文件,点击一个按钮,文件不存在:访问数据库服务器,数据库服务器停 ...
- java实现微信H5支付
前面做了app微信支付的回调处理,现在需要做微信公众号的支付,花了一天多时间,终于折腾出来了!鉴于坑爹的微信官方没有提供Java版的demo,所以全靠自己按照同样坑爹的文档敲敲敲,所以记录下来,以供自 ...
- 读excle
1.OleDbConnection读取Excel ///<summary>///上传文件到临时目录中 ///</ummary>private void Upload(){ Ht ...
- 公共技术点之 Java 反射 Reflection
本文摘录地址: http://codekk.com/open-source-project-analysis/detail/Android/Mr.Simple/%E5%85%AC%E5%85%B1%E ...
- 11-内涵段子-爬虫(python+正则)
爬取内涵段子,使用正则进行简单处理: #_*_ coding: utf-8 _*_ ''' Created on 2018年7月14日 @author: sss function:爬去内涵段子(静态网 ...
- 14-stringstream
C++中stringstream的使用方法和样例 原创 2016年11月06日 15:46:49 标签: string / C++ 7427 之前在leetcode中进行string和int的转化时使 ...
- 搭建大数据hadoop完全分布式环境遇到的坑
搭建大数据hadoop完全分布式环境,遇到很多问题,这里记录一部分,以备以后查看. 1.在安装配置完hadoop以后,需要格式化namenode,输入指令:hadoop namenode -forma ...