表单 用jquery做输入脱离焦点 进行正则验证
<!-- 账号登录块 -->
<form class="form1" action="" method="get" onsubmit="return sub();">
<label></label>
<input class="user-name user" type="text" placeholder="邮箱/手机号码/小米ID">
<input class="user-name mima" type="password" name="" id="" value="" placeholder="密码">
<div class="clear"></div>
<p class="alert at1">
<span>!</span>
账号格式不正确
</p>
<p class="alert at2">
<span>!</span>
密码格式不正确
</p>
<input class="loading" type="submit" id="" name="" value="登录" />
</form>
<!-- 手机短信登录注册快 -->
<form class="form2" action="" method="get">
<label class="lb1">+86</label>
<input class="user-name phone" type="text" placeholder="手机号码">
<input class="user-name yzm" type="password" name="" id="" value="" placeholder="短信验证码"><label class="lb2">获取验证码</label>
<div class="clear"></div>
<p class="alert at3">
<span>!</span>
手机号格式不正确
</p>
<p class="alert at4">
<span>!</span>
短信验证码不正确
</p>
<input class="loading" type="submit" id="" name="" value="立即登录/注册" />
</form>
// 用户名验证
$(".user").focus(function(){
$(".user").css("background-color","#FFFFCC");
});
$(".alert").hide();
$(".user").blur(function(){
var n = $(".user").eq(0).val();
if(!isMobil(n)){
if(!isMail(n))
{
if (!isTrueName(n)) {
$(".at1").show();
$(".user").eq(0).css("border-color","red");
} else{
$(".alert").hide();
$(".user").eq(0).css("border-color"," #ABADB3");
}
}else{
$(".alert").hide();
$(".user").eq(0).css("border-color"," #ABADB3");
}
}else{
$(".alert").hide();
$(".user").eq(0).css("border-color"," #ABADB3");
}
});
// 密码验证
$(".mima").focus(function(){
$(".mima").css("background-color","#FFFFCC");
});
$(".alert").hide();
$(".mima").blur(function(){
var m = $(".mima").eq(0).val();
if(!isPasswd(m)){
$(".at2").show();
$(".mima").eq(0).css("border-color","red");
}else{
$(".alert").hide();
$(".mima").eq(0).css("border-color"," #ABADB3");
}
});
//手机格式验证
$(".phone").focus(function(){
$(".phone").css("background-color","#FFFFCC");
});
$(".alert").hide();
$(".phone").blur(function(){
var p = $(".phone").eq(0).val();
if(!isMobil(p)){
$(".at3").show();
$(".phone").eq(0).css("border-color","red");
}else{
$(".alert").hide();
$(".phone").eq(0).css("border-color"," #ABADB3");
}
});
//验证码
$(".yzm").focus(function(){
$(".yzm").css("background-color","#FFFFCC");
});
$(".alert").hide();
$(".yzm").blur(function(){
var y = $(".yzm").eq(0).val();
if(!isyzm(y)){
$(".at4").show();
$(".yzm").eq(0).css("border-color","red");
}else{
$(".alert").hide();
$(".yzm").eq(0).css("border-color"," #ABADB3");
}
});
});
验证函数
/* 校验手机号 */
function isMobil(s)
{
var patrn=/^1(3|4|5|7|8)\d{9}$/;
if (!patrn.exec(s)) {return false}
else{return true}
}
/*邮箱验证*/
function isMail(s)
{
var patrn=/^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$/;
if (!patrn.exec(s)) {return false}
else{return true}
}
/* 校验用户名 */
function isTrueName(s)
{
var patrn=/^[a-zA-Z]{4,8}$/;
if (!patrn.exec(s)) {return false}
else{return true}
}
//校验密码:只能输入6-20个字母、数字、下划线
function isPasswd(s)
{
var patrn=/^(\w){6,20}$/;
if (!patrn.exec(s)) {return false}
else{return true}
}
/* 校验手机号 */
function isyzm(s)
{
var patrn=/^\d{5}$/;
if (!patrn.exec(s)) {return false}
else{return true}
}
表单 用jquery做输入脱离焦点 进行正则验证的更多相关文章
- 在表单提交之前做校验-利用jQuery的submit方法
点击表单中的提交按钮,默认就会提交表单,如果要在表单提交之前做一些校验,那么就可以用jQuery的submit方法. 也就是jQuery的submit的方法执行顺序,在表单的提交之前.用法如下: $( ...
- Web开发——HTML基础(HTML表单/下拉列表/多行输入)
参考: 参考:http://www.w3school.com.cn/html/html_forms.asp 目录: 1.<form> 元素 1.1 <input> 元素(输入属 ...
- 15 款优化表单的 jQuery 插件
网页上的表单提供给用户的一种交互的方式,用户输入数据,提交到服务器,等待后续的处理.这些表单在我们浏览的网页中随处可见,也容易被我们忽略. 比如,“联系我们”页面会提供一个表单给用户填写他们的信息和想 ...
- Form表单利用Jquery Validate验证以及ajax提交
#表单利用Jquery验证验证以及ajax提交 概述>详细讲解表单利用Jquery >验证验证以及ajax提交的过程,以及Validate的自定义提示语,非空判断,输入字段的远程ajax验 ...
- Jquery easyui 重置按钮,easyui 清空表单,Jquery easyui 重置表单
Jquery easyui 重置按钮,easyui 清空表单,Jquery easyui 重置表单 >>>>>>>>>>>>&g ...
- ios手机弹出层上表单的操作,收起键盘焦点错乱的问题
今天遇到了ios手机下 弹出层上form表单 当收起键盘后,焦点错乱,无法再操作的问题 解决办法 function device() { const u = navigator.userAgent; ...
- 让input表单输入框不记录输入过信息的方法
有过表单设计经验的朋友肯定知道,当我们在浏览器中输入表单信息的时候,往往input文本输入框会记录下之前提交表单的信息,以后每次只要双击input文本输入框就会出现之前输入的文本,这样有时会觉得比较方 ...
- spring mvc表单的展现、输入处理、校验的实现
之前已经实现了spring mvc的入门例子及如何处理带参数的请求Controller编写.本文主要记录: 1)重定向请求 2)处理路径中含有变量的请求 3)使用JSR-303进行校验 ① 首先,编写 ...
- Jquery validate验证表单时多个name相同的元素只验证第一个的问题
下面搜集了五种方法,主要还是前两个提供了解决方案,第三种需要修改jQuery源码: 修复jquery.validate插件中name属性相同(如name='a[]')时验证的bug 使用jquery. ...
随机推荐
- ArcGis基础——把类别代码替换成对应中文名称的方法
挂接! 上面是答案,展开一下就是做一个Excel对照表,就两列,代码与中文名称.然后用类别代码字段匹配挂接. 别傻傻找vbs/py代码,不知道拐个弯.
- windows server 常用功能(一)
最近做了一个windows server 2016的环境,也遇到了很多问题,作为一个新手,又没有很好的记录下解决方案,因为写这篇文章的时间有点晚,因此只能留下一些思路以供参考. 1.作为一个serve ...
- 笔记34 Spring MVC的高级技术——处理multipart形式的数据
一.需求介绍: Spittr应用在两个地方需要文件上传.当新用户注册应用的时候,我 们希望他们能够上传一张图片,从而与他们的个人信息相关联.当用 户提交新的Spittle时,除了文本消息以外,他们可能 ...
- selenium+plantomJS
#!/usr/bin/env python # -*- coding:utf-8 -*- """ 流程框架: 1.搜索关键词,利用selenium驱动浏览器搜索关键词,查 ...
- ConcurrenHashMap介绍1.8 中为什么要用红黑树
java8不是用红黑树来管理hashmap,而是在hash值相同的情况下(且重复数量大于8),用红黑树来管理数据. 红黑树相当于排序数据.可以自动的使用二分法进行定位.性能较高. 在Concurren ...
- window操作命令
netstat -ano 查看所有端口 netstat -ano|findstr "8005" 查看指定端口
- 初始化workbook时可能忽略的问题
正常情况下解析excel 先初始化workbook,使用文件名称后缀来初始化的. 一般情况下 这种是没有问题的,但是当遇到如果是07版本的 xlsx结尾的文件 改了后缀 为xls后 解析就会发生异常 ...
- vim 详解
Vim是一个功能强大的全屏幕文本编辑器,是Linux/UNIX上最常用的文本编辑器. 它的作用是建立.编辑.显示文本文件. Vim的几种模式 正常模式: 可以使用快捷键命令,或按:输入命令行. 插入模 ...
- 好久不见的博客咯!——没有可持久化的可持久化treap
每每想要去了解可持久化treap这个好写好调的东东,然后就发现网上只有一个人的——SymenYang的!在此我必须得把他批判一番——写方法不贴代码是什么心态!而且写出来的是有问题的呀!害人不浅! 好吧 ...
- Keystone controller.py & routers.py代码解析
目录 目录 Keystone WSGI 实现 controllerspy routerspy 参考文档 Keystone WSGI 实现 Keystone 项目把每个功能都分到单独的目录下,EXAMP ...