嗯哼,验证用户名,密码,重复密码,手机号,邮箱。提交时全部进行验证,通过才跳转。

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="jquery.js"></script>
<style>
/* input{
float:left;
}*/
span{
/*display:inline;*/
color: red;
font-weight: bold;
font-family: '微软雅黑';
display: none;
}
</style>
</head>
<body>
<form action="regist.php" method="get">
<div>
<p>用户名</p>
<p><input type="text" name="username"><span>用户名至少为6位!</span></p>
</div>
<div>
<p>密码</p>
<p><input type="text" name="password"><span>密码至少为6位!</span></p>
</div>
<div>
<p>再次输入密码</p>
<p><input type="text" name="repassword"><span>两次密码不一致!</span></p>
</div>
<div>
<p>手机号</p>
<p><input type="text" name="tel" maxlength="11"><span>手机号码格式错误!</span></p>
</div>
<div>
<p>邮箱</p>
<p><input type="text" name="mail"><span>邮箱格式错误!</span></p>
</div>
<div>
<p><input type="submit" value="提交"></p>
</div>
</form>
</body>
<script>
//原文是用data给每个标签添加一个属性,为了便于理解,直接采用了变量
var check1 = 0;
var check2 = 0;
var check3 = 0;
var check4 = 0;
var check5 = 0;
//用户名
$('input[name="username"]').blur(function(){
if($(this).val().length<6){
$(this).next('span').css({"display":"inline"});
check1 = 0;
}else{
$(this).next('span').css({"display":"none"});
check1 = 1;
}
});
//密码
$('input[name="password"]').blur(function(){
if($(this).val().length<6){
$(this).next('span').css({"display":"inline"});
check2 = 0;
}else{
$(this).next('span').css({"display":"none"});
check2 = 1;
}
});
//再次输入密码
$('input[name="repassword"]').blur(function(){
if($(this).val()!=$('input[name="password"]').val()){
$(this).next('span').css({"display":"inline"});
check3 = 0;
}else{
$(this).next('span').css({"display":"none"});
check3 = 1;
}
});
//手机号
$('input[name="tel"]').blur(function(){
//此处注意正则表达式的使用,正则.test(‘字符串’),字符串.match(正则)
if(!$(this).val().match(/^188\d{8}$/)){
$(this).next().show();
check4 = 0;
}else{
$(this).next().hide();
check4 = 1;
}
});
//邮箱
$('input[name="mail"]').blur(function(){
if(!$(this).val().match(/^\w+@\w+\.com$/)){
$(this).next('span').css({"display":"inline"});
check5 = 0;
}else{
$(this).next('span').css({"display":"none"});
check5 = 1;
}
});
$('form').submit(function(){
$('input').blur();
var sum = check1 + check2 + check3 + check4 + check5;
if(sum!=5){
return false;
}
});
</script>
</html>

Jquery学习笔记(3)--注册验证的更多相关文章

  1. jQuery 学习笔记

    jQuery 学习笔记   一.jQuery概述    宗旨: Write Less, Do More.    基础知识:        1.符号$代替document.getElementById( ...

  2. jQuery学习笔记 - 基础知识扫盲入门篇

    jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...

  3. jQuery学习笔记之插件开发(4)

    jQuery学习笔记之插件开发(4) github源码地址 插件:了让原有功能的增强. 1.插件的种类(3种):局部.全局.选择器插件 1.1封装对象方法的插件 这种类型的插件是把一些常用或者重复使用 ...

  4. jQuery学习笔记之jQuery的Ajax(3)

    jQuery学习笔记之jQuery的Ajax(3) 6.jQuery的Ajax插件 源码地址: https://github.com/iyun/jQueryDemo.git ------------- ...

  5. jQuery学习笔记(一)jQuery选择器

    目录 jQuery选择器的优点 基本选择器 层次选择器 过滤选择器 表单选择器 第一次写博客,希望自己能够长期坚持,以写博客的方式作为总结与复习. 最近一段时间开始学习jQuery,通过写一个jQue ...

  6. jQuery学习笔记(一):入门

      jQuery学习笔记(一):入门 一.JQuery是什么 JQuery是什么?始终是萦绕在我心中的一个问题: 借鉴网上同学们的总结,可以从以下几个方面观察. 不使用JQuery时获取DOM文本的操 ...

  7. JQuery学习笔记——层级选择器

    JQuery学习笔记--层级选择器 上一篇学习了基础的五种选择,分别是id选择器,class选择器,element选择器,*选择器 和 并列选择器.根据手册大纲,这篇学习的是层级选择器. 选择器: 1 ...

  8. jQuery学习笔记之Ajax用法详解

    这篇文章主要介绍了jQuery学习笔记之Ajax用法,结合实例形式较为详细的分析总结了jQuery中ajax的相关使用技巧,包括ajax请求.载入.处理.传递等,需要的朋友可以参考下 本文实例讲述了j ...

  9. jQuery 学习笔记:jQuery 代码结构

    jQuery 学习笔记:jQuery 代码结构 这是我学习 jQuery 过程中整理的笔记,这一部分主要包括 jQuery 的代码最外层的结构,写出来整理自己的学习成果,有错误欢迎指出. jQuery ...

  10. jQuery学习笔记之DOM操作、事件绑定(2)

    jQuery学习笔记之DOM操作.事件绑定(2) --------------------学习目录------------------------ 4.DOM操作 5.事件绑定 源码地址: https ...

随机推荐

  1. 关于Django迁移出现问题

    关于Django迁移出现问题 源码: #coding:utf- from django.db import models # Create your models here. class BookIn ...

  2. ISP图像调试工程师——对比度增强(熟悉图像预处理和后处理技术)

    经典对比度增强算法: http://blog.csdn.net/ebowtang/article/details/38236441

  3. [译]ES读写文档时shard-replication模型

    官网页面:https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-replication.html 本文是对官网页面的 ...

  4. 桌面轻量级数据库的选择:Access、SQLite、自己编写?

    1. Access我们做小项目的时候特别是小的MIS系统一般也都要用数据库来保存数据.经观察大部分的小系统都是用Access数据库,有的系统为了掩盖数据库的类型,把数据文件后缀名改了,其实只要改回到m ...

  5. scala之Actors

    这多半是因为actor是共享线程,所以阻塞线程会导致其他线程获取不到线程.

  6. [Tools] Unlock TypeScript's Features in Vanilla JS with @ts-check and JSDoc

    TypeScript can help you with your plain JavaScript files if you add a simple //@ts-check comment. Th ...

  7. automake--关于两个文件configure.in和Makefile.am的编写

    http://blog.csdn.net/shanzhizi/article/details/30251763 automake主要通过编辑Makefile.am来控制它的行为,下面就常用的三个Mak ...

  8. MYSQL存储过程及事件

    关于mysql下的存储过程以及事件的创建 以下这个存储过程主要实现的功能就是查询表里面半年前的数据,假设有就存到文件.然后将数据删除. CREATE DEFINER = `root`@`localho ...

  9. Android数据库之基本概念(上)

    1.Android数据库简单介绍 Android通过结合使用SQLite数据库和Content Provider,提供了结构化数据的持久功能. SQLite数据库能够通过一种结构化的.易于管理的方法来 ...

  10. RESTful最佳实践

    哲学 不要为了RESTful而RESTful 在能表达清楚的情况下,简单就是美 接口路径设计 接口设计原则 URI指向的是唯一的资源对象 示例: 指向ID为yanbo.ai的Account对象 GET ...