jQuery基于正则表达式的表单验证功能示例


Posted in Javascript onJanuary 21, 2017

本文实例讲述了jQuery基于正则表达式的表单验证功能。分享给大家供大家参考,具体如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Test</title>
<script type="text/javascript" language="javascript" src="jquery-1.7.2.min.js"></script>
<script type="text/javascript" language="javascript" >
function validata(){
  if($("#username").val()==""){
  alert("请输入名字");
  return false;
  }
  if($("#password").val()==""){
  alert("请输入密码");
  return false;
  }
  if($("#telephone").val()==""){
  alert("请输入电话号码");
  }
  if($("#email").val()==""){
  $("#email").val("shuangping@163.com");
  }
}
function isInteger(obj){
  reg=/^[-+]?\d+$/;
  if(!reg.test(obj)){
  $("#test").html("<b>Please input correct figures</b>");
  }else{
  $("#test").html("");
  }
}
function isEmail(obj){
  reg=/^\w{3,}@\w+(\.\w+)+$/;
  if(!reg.test(obj)){
  $("#test").html("<b>请输入正确的邮箱地址</b>");
  }else{
  $("#test").html("");
  }
}
function isString(obj){
  reg=/^[a-z,A-Z]+$/;
  if(!reg.test(obj)){
  $("#test").html("<b>只能输入字符</b>");
  }else{
  $("#test").html("");
  }
}
function isTelephone(obj){
  reg=/^(\d{3,4}\-)?[1-9]\d{6,7}$/;
  if(!reg.test(obj)){
  $("#test").html("<b>请输入正确的电话号码!</b>");
  }else{
  $("#test").html("");
  }
}
function isMobile(obj){
  reg=/^(\+\d{2,3}\-)?\d{11}$/;
  if(!reg.test(obj)){
  $("#test").html("请输入正确移动电话");
  }else{
  $("#test").html("");
  }
}
function isUri(obj){
  reg=/^http:\/\/[a-zA-Z0-9]+\.[a-zA-Z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;
  if(!reg.test(obj)){
  $("#test").html($("#uri").val()+"请输入正确的inernet地址");
  }else{
  $("#test").html("");
  }
}
//document加载完毕执行
$(document).ready(function() {
// do something here
//隔行换色功能
$("p").each(function(i){
  this.style.color=['red','green','blue','black'][i%2]
  });
//eq(2)获取$("p")集合的第3个元素
$("p").eq(2).click(function(){$("#display").css("color","blue")});
//所有test中的p都附加了样式"over"。
$("#test>p").addClass("over");
//test中的最后一个p附加了样式"out"。
$("#test p:last").addClass("out");
//选择同级元素还没看懂
//$('#faq').find('dd').hide().end().find('dt').click(function()
//选择父级元素
$("a").hover(
   function(){$(this).parents("p").addClass("out")},
   function(){$(this).parents("p").removeClass("out")})
//hover鼠标悬停效果,toggle每次点击时切换要调用的函数 ,
//trigger(eventtype): 在每一个匹配的元素上触发某类事件,
//bind(eventtype,fn),unbind(eventtype): 事件的绑定与反绑定从每一个匹配的元素中(添加)删除绑定的事件。
//方法的连写
$("#display").hover(function(){
  $(this).addClass("over");
  },function(){
   $(this).removeClass("over");
  })
  .click(function(){alert($("#display").text())});
if($.browser.msie){//判断浏览器,若是ie则执行下面的功能
  //聚焦
  $("input[@type=text],textarea,input[@type=password]")
  .focus(function(){$(this).css({background:"white",border:"1px solid blue"})})
  //也可以这样连着写,
  //.blur(function(){$(this).css({background:"white",border:"1px solid black"})})
  //失去焦点
  //css样式可以通过addClass()来添加
  $("input[@type=text],textarea,input[@type=password]")
  .blur(function(){$(this).css({background:"white",border:"1px solid black"});});
}
});
</script>
<style type="text/css">
.over{
font-size:large;
font-style:italic;
}
.out{
font-size:small;
}
</style>
</head>
<body >
<div id="display">demo</div>
<div id="test">
<p>adfa<a>dfasfa</a>sdfasdf</p>
<p>adfadfasfasdfasdf</p>
<p>adfadfasfasdfasdf</p>
<p>adfadfasfasdfasdf</p>
</div>
<form id="theForm">
isString<div><input type="text" id="username" onblur="isString(this.value)"/></div>
isInteger<div><input type="text" id="password" onblur="isInteger(this.value)"/></div>
isTelephone<div><input type="text" id="telephone" onblur="isTelephone(this.value)"/></div>
isMobile<div><input type="text" id="mobile" onblur="isMobile(this.value)"/></div>
isEmail<div><input type="text" id="email" onblur="isEmail(this.value)"/></div>
isUri<div><input type="text" id="uri" onblur="isUri(this.value)"/></div>
<div><input type="button" value="Validata" onclick="return validata();" /></div>
</form>
</body>
</html>
Javascript 相关文章推荐
List the Codec Files on a Computer
Jun 18 Javascript
Extjs中DisplayField的日期或者数字格式化扩展
Sep 03 Javascript
JavaScript 拾碎[三] 使用className属性
Oct 16 Javascript
jquery select多选框的左右移动 具体实现代码
Jul 03 Javascript
如何设置一定时间内只能发送一次请求
Feb 28 Javascript
底部悬浮通栏可以关闭广告位的实现方法
Jun 01 Javascript
AngularJS 如何在控制台进行错误调试
Jun 07 Javascript
js 递归和定时器的实例解析
Feb 03 Javascript
Vue input控件通过value绑定动态属性及修饰符的方法
May 03 Javascript
在vue项目中优雅的使用SVG的方法实例详解
Dec 03 Javascript
django简单的前后端分离的数据传输实例 axios
May 18 Javascript
Vue + ts实现轮播插件的示例
Nov 10 Javascript
一篇文章搞定JavaScript类型转换(面试常见)
Jan 21 #Javascript
超全面的JavaScript开发规范(推荐)
Jan 21 #Javascript
Mongoose学习全面理解(推荐)
Jan 21 #Javascript
ng-options和ng-checked在表单中的高级运用(推荐)
Jan 21 #Javascript
vue实现添加标签demo示例代码
Jan 21 #Javascript
微信小程序 数据交互与渲染实例详解
Jan 21 #Javascript
前端编码规范(3)JavaScript 开发规范
Jan 21 #Javascript
You might like
PHP4与PHP5的时间格式问题
2008/02/17 PHP
PHP将整个网站生成HTML纯静态网页的方法总结
2012/02/05 PHP
你不知道的文件上传漏洞php代码分析
2016/09/29 PHP
基于JavaScript实现继承机制之原型链(prototype chaining)的详解
2013/05/07 Javascript
jQuery中RadioButtonList的功能及用法实例介绍
2013/08/23 Javascript
Jquery.addClass始终无效原因分析
2013/09/08 Javascript
nodejs教程之制作一个简单的文章发布系统
2014/11/21 NodeJs
javascript实现Table排序的方法
2015/05/15 Javascript
手机开发必备技巧:javascript及CSS功能代码分享
2015/05/25 Javascript
详解javascript跨浏览器事件处理程序
2016/03/27 Javascript
Bootstrap图片轮播组件使用实例解析
2016/06/30 Javascript
js控制li的隐藏和显示实例代码
2016/10/15 Javascript
vue写一个组件
2018/04/09 Javascript
React实现全局组件的Toast轻提示效果
2018/09/21 Javascript
js实现简单模态框实例
2018/11/16 Javascript
javascript实现简单打字游戏
2019/10/29 Javascript
vue从后台渲染文章列表以及根据id跳转文章详情详解
2020/12/14 Vue.js
[13:40]TI3青蛙君全程回顾 DOTA2我们为梦想再战
2013/09/13 DOTA
python数据结构树和二叉树简介
2014/04/29 Python
探究Python的Tornado框架对子域名和泛域名的支持
2015/05/02 Python
Python生成数字图片代码分享
2017/10/31 Python
Python人脸识别初探
2017/12/21 Python
基于python实现在excel中读取与生成随机数写入excel中
2018/01/04 Python
python使用matplotlib库生成随机漫步图
2018/08/27 Python
pandas和spark dataframe互相转换实例详解
2020/02/18 Python
python在CMD界面读取excel所有数据的示例
2020/09/28 Python
python获得命令行输入的参数的两种方式
2020/11/02 Python
草莓网化妆品澳大利亚站:Strawberrynet AU
2017/12/18 全球购物
Bibloo奥地利:购买女装、男装、童装、鞋和配件
2018/10/18 全球购物
建筑专业毕业生推荐信
2013/11/21 职场文书
研究生求职推荐信范文
2013/11/30 职场文书
市场部业务员岗位职责
2014/04/02 职场文书
党委书记群众路线对照检查材料思想汇报
2014/10/04 职场文书
简易离婚协议书范本
2014/10/24 职场文书
python文件名批量重命名脚本实例代码
2021/04/22 Python
Jpa Specification如何实现and和or同时使用查询
2021/11/23 Java/Android