作为学习的记录,方便大家查看,废话不多说,直接上代码

html 结构:

<form action="a.php" method="" class="form">
<div>
<label for="username">用户名:</label>
<input id="username" class="required" type="text" />
</div>
<div>
<label for="email">邮箱:</label>
<input id="email" class="required" type="text" />
</div>
<div><input id="send" type="submit" /></div>
</form> 

jq代码:

$("form :input.required").each(function(){
var $required = $('<strong class="high">*</strong>');
$(this).parent().append($required);
});
$("form :input").blur(function(){
var $parent = $(this).parent();
$parent.find(".formtips").remove(); //删除多余重复
// 验证用户名
if($(this).is('#username')){
if(this.value == ""|| this.value.length< ){
var errorMsg = "请输入6位用户名" ;
$parent.append($('<span class="formtips onError">'+errorMsg+'</span>'));
}else{
var okMsg = "输入正确";
$parent.append($('<span class="formtips okMsg">'+okMsg+'</span>'));
}
}
// 验证邮箱
if($(this).is('#email')){
if(this.value == "" ){ //|| (this.value!="" && !/.+@.+\.[a-zA-Z] {2,4}$/.test(this.value)
var errorMsg = "请输入正确的E-mail" ;
$parent.append($('<span class="formtips onError">'+errorMsg+'</span>'));
}else{
var okMsg = "输入正确";
$parent.append($('<span class="formtips okMsg">'+okMsg+'</span>'));
}
}
}).keyup(function() {
$(this).triggerHandler('blur');
}).focus(function(){
$(this).triggerHandler('blur');
}); $("#send").click(function(){
$("form .required:input").trigger('blur');
var numError = $("form .onError").length;
var $id = $("form .onError").prevAll(".required").attr("id");
if(numError){
if(numError > ){
$("#username").focus();
}else if($id == "email"){
$("#email").focus();
}
return false;
}
alert("注册成功,密码已发送到你的邮箱,请查收");
});

学习代码是需要多跑几遍的!

jq实战-表单验证的更多相关文章

  1. JS实战 · 表单验证

    思路:         1.定义页面             通过表格格式化表单:             表格行都有自己的背景颜色:             单元格中的数据(文本等)用div进行封装 ...

  2. JQ的表单验证

    (function () { $("#but").click(function () { if ($("#name").val() == "" ...

  3. jQuery框架学习第十一天:实战jQuery表单验证及jQuery自动完成提示插件

    jQuery框架学习第一天:开始认识jQueryjQuery框架学习第二天:jQuery中万能的选择器jQuery框架学习第三天:如何管理jQuery包装集 jQuery框架学习第四天:使用jQuer ...

  4. 仿联想商城laravel实战---4、验证(lavarel的表单验证如何使用)

    仿联想商城laravel实战---4.验证(lavarel的表单验证如何使用) 一.总结 一句话总结: 验证规则和验证信息的数组:在控制器的方法中 1.注册页面中的用户名正确(比如是否重名,字段长度是 ...

  5. jq中的表单验证插件------jquery.validate

    今天我们来说一下表单验证,有人说我们在进行表单验证的时候使用正则来验证是非常麻烦的,现在我来给大家介绍一下表单验证的插件:jquery.validate.min.js 它是与jquery一起结合用来使 ...

  6. 抽屉之Tornado实战(7)--form表单验证

    在这里,我们把form表单验证的代码进行工具化了,以后稍微修改一下参数就可以拿来用了 先贴上代码 forms.py from backend.form import fields class Base ...

  7. 登陆jq表单验证及jqcookie记住密码实例

    <p><%@ page contentType="text/html; charset=utf-8"%> <%@taglib prefix=" ...

  8. 模态框的理解 ,jQ: loading,进度条, 省级联动 表单验证 插件

    模态框: 打开一个弹框 不关闭它就不能做框外的操作 必须关闭或弹出另外的弹框 加载延迟loading + 进度条只要有请求 就处理一下监控ajax 全局事件jquery: $('#box').ajax ...

  9. 表单验证插件----jquery validation

    1.下载地址:http://jqueryvalidation.org/ 2.使用方法: <script type="text/javascript" src="ht ...

随机推荐

  1. CodeForces 629C Famil Door and Brackets

    DP. 具体做法:dp[i][j]表示长度为 i 的括号串,前缀和(左括号表示1,右括号表示-1)为 j 的有几种. 状态转移很容易得到:dp[i][j]=dp[i - 1][j + 1]+dp[i ...

  2. c++几个新特性

    template 模板 1.出于通用性考虑,程序库中几乎所有东西都被设计为template形式,不支持template几乎不能使用标准程序库. 2.所谓template,是针对"一个或多个尚 ...

  3. MySQL 表的命令

    1.查看表的结构: desc 表名; show columns from 表名; describe 表名; show create table 表名; 2.修改表名 rename table 原表名 ...

  4. POJ 3362 Protecting the Flowers

    这题和金华区域赛A题(HDU 4442)是一样的做法. 对两个奶牛进行分析,选择两个奶牛总花费少的方式排序. bool cmp(const X&a,const X&b){ return ...

  5. Zabbix日志错误总结(持续更新)

    no active checks on server [*.*.*.*:10051]: host [*] not found failed to accept an incoming connecti ...

  6. cygwin的安装,vi的使用,gcc,g++的使用(转)

    源:cygwin的安装,vi的使用,gcc,g++的使用 Gcc的Makefile简单使用

  7. Android应用运行过程(转)

    源:Android应用运行过程 首先,ActivityThread从main()函数开始执行,调用prepareMainLooper()为UI线程创建一个消息队列(MessageQueue). 然后创 ...

  8. Tsinsen-1486:树【Trie树 + 点分治】

    暴力部分: 这个题一开始的想法是 n^2 枚举两个点,然后logn维护LCA,在倍增的同时维护异或值和 k 的个数. s_z_l老爷指导了新的思路,既然这个树只有n^2个LCA,那么枚举LCA,同时向 ...

  9. C# 计算文件的HASH

    /// <summary> /// 提供用于计算指定文件哈希值的方法 /// <example>例如计算文件的MD5值: /// <code> /// String ...

  10. ABP架构解析

    ABP总体介绍 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)”的简称. ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WEB应 ...