<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(function(){ function checkinput_form1(_this){
alert(_this+" ------ " );
var _parent=$("#form1");
//var $this=$(this);
var $this=_this;
var _name=$this.attr("name");
var _val=$.trim($this.val()); var _console=$("#regError",_parent);
switch(_name){
case "username":
if (_val == "") {
_console.addClass('red').text("请输入用户名");return false;
} else if (!isName.test(_val)) {
_console.addClass('red').text("用户名只能是手机或邮箱");return false;
} else {
_console.removeClass('red').html("&nbsp;");
$.ajax({
type: "GET",
url: "/reg/username",
data: {
"username": _val
},
dataType: "jsonp",
success: function(data) {
if (data.status == 0) {
_console.removeClass("red").html("&nbsp;");
} else {
_console.addClass("red").text(data.message);
return false;
}
}
});
}
break;
case "password":
if (_val == "") {
_console.addClass('red').text("请输入密码");return false;
} else if (_val.indexOf(' ') != -1) {
_console.addClass('red').text("密码中不能含有空格");return false;
} else if (_val.length < 6 || _val.length > 20) {
_console.addClass('red').text("密码长度为6-20位");return false;
} else {
_console.removeClass('red').html("&nbsp;");
}
break;
case "repeatPassword":
if (_val == "") {
_console.addClass('red').text("请重复密码");return false;
} else if (_val != _parent.find("input[name=password]").val()) {
_console.addClass('red').text("密码不一致");return false;
} else {
_console.removeClass('red').html("&nbsp;");
}
break;
}
return true; } //遍历表单文本框
$("#form1 input[name]").each(function(){
$(this).bind( "blur", function(){checkinput_form1($(this)) });//注意blur事件写法!
function checkinput_form1(_this) {
}
}) //表单提交
$("#form1").submit(function(){
var $this=$(this);
$("input[name]",this).not("[type=hidden]").each(function(){
var _flag=checkinput_form1( $(this) );//表单验证
if(_flag==false) return false;
});
}) });
</script>
</head>
<body>
<form id="main-reg-form" method="post" action="">
<input type=text name="username"><br>
<input type=text name="password"><br>
<input type=text name="password2"><br>
<input type="submit" value="提交">
</form> </body>
</html>

表单:提交验证,及blur事件验证的更多相关文章

  1. layui弹出表单提交后,界面model验证部分起作用

    情况1----input属性中type=submit时验证都可以起作用,但是弹出层表单的返回值不能获取,所以用ajax二次提交后会出现重复添加数据的问题 情况2----input属性中type=but ...

  2. ASP.NET MVC/Core表单提交后台模型二级属性验证问题

    起因 这个是网友在官网论坛的提问:https://fineui.com/bbs/forum.php?mod=viewthread&tid=22237 重新问题 本着务实求真的态度,我们先来复现 ...

  3. php表单提交时的身份证号码验证

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  4. jsp——js事件修改属性样式的两种方法(直接赋值、修改属性)、验证表单符合某要求、阻止表单提交、告诉浏览器不要缓存

    代码 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncodi ...

  5. form的onsubmit事件--表单提交前的验证最佳实现方式

    今天遇到了一个问题,页面中include了很多的公共页面(都是没有form的),并且里面好多的地方都是自行提交的(页面中加入一个type=“submit”域,然后js中写入sumbit.click来执 ...

  6. 原生JS 表单提交验证器

    转载:http://www.cnblogs.com/sicd/p/4613628.html 一.前言 最近在开发一个新项目,需要做登陆等一系列的表单提交页面.在经过“缜密”的讨论后,我们决定 不用外部 ...

  7. 利用JS提交表单的几种方法和验证

    第一种方式:表单提交,在form标签中增加onsubmit事件来判断表单提交是否成功 <script type="text/javascript"> function ...

  8. AngularJS 表单提交后显示验证信息与失焦后显示验证信息

    虽然说AngularJS的实时表单验证非常有用,非常高效方便,但是当用户还没有完成输入时便弹出一个错误提示,这种体验是非常糟糕的. 正常的表单验证逻辑应该是在用户提交表单后或完成当前字段中的输入后,再 ...

  9. 在客户端先通过JS验证后再将表单提交到服务器

    问题:想要在客户端先通过JS验证后再将表单提交到服务器 参考资料: jQuery 事件 - submit() 方法 试验过程: 服务器端使用PHP <html> <head> ...

随机推荐

  1. .NET 中使用 Mutex 进行跨越进程边界的同步

    Mutex 是 Mutual Exclusion 的缩写,是互斥锁,用于防止两个线程同时对计算机上的同一个资源进行访问.不过相比于其他互斥的方式,Mutex 能够跨越线程边界. 本文内容 Mutex ...

  2. Microsoft - Get Course Order

    // "static void main" must be defined in a public class. public class Main { public static ...

  3. 枚举大小为k的子集

    这种位操作不大可能分析出来,先看代码再分析. 代码 使用条件:\(k>0\) void solve(int n,int k) { for(int comb = (1 << k) - ...

  4. java企业级开发的实质就是前台后台如何交互的-各个对象之间如何交互,通信的-程序执行的流程是怎样的

    1.开山鼻祖-servlet 如何将url 和 strvlet(.java文件)联系起来的 顺平说的:在xml中,url先找到xml,由对应的url的得到servlet那个类,然后就可以输入一个网址访 ...

  5. USB gadget 驱动 printer.c 分析

    1. modprobe g_printer idVendor=0x0525 idProduct=0xa4a8 modprobe后面也可以加模块参数 2. prn_example从stdout获取数据然 ...

  6. GStreamer插件分类

    gst-plugins-base一套小而固定的插件,涵盖各种可能类型的elements; 这些在开发系列期间随着核心变化而不断更新.我们相信分销商可以安全地发行这些插件.人们编写插件应该将他们的代码基 ...

  7. kettle的资源库

    在kettle中的转换或者作业等资源的存储的仓库称为资源库:分为文件资源库.数据库资源库. 一个转换或者作业可以属于某个资源库或者一个单独的文件形态存在. 一.数据库资源库 1.1在mysql中创建一 ...

  8. PHP中开启gzip压缩的2种方法

    网页开启gzip压缩以后,其体积可以减小20%~90%,可以节省下大量的带宽,从而减少页面响应时间,提高用户体验. php配置改法: 复制代码代码如下: zlib.output_compression ...

  9. Spring MVC 向页面传值-Map、Model、ModelMap、ModelAndView

    Spring MVC 向页面传值,有4种方式: ModelAndView Map Model ModelMap 使用后面3种方式,都是在方法参数中,指定一个该类型的参数. Model Model 是一 ...

  10. linux下编译GD(freetype+libjpeg+libpng+gd-devel)

    linux下编译GD(freetype+libjpeg+libpng+gd-devel) 1.检查freetype是否安装rpm -qa | grep freetype没有的话编译freetype 这 ...