表单:提交验证,及blur事件验证
<!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(" ");
$.ajax({
type: "GET",
url: "/reg/username",
data: {
"username": _val
},
dataType: "jsonp",
success: function(data) {
if (data.status == 0) {
_console.removeClass("red").html(" ");
} 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(" ");
}
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(" ");
}
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事件验证的更多相关文章
- layui弹出表单提交后,界面model验证部分起作用
情况1----input属性中type=submit时验证都可以起作用,但是弹出层表单的返回值不能获取,所以用ajax二次提交后会出现重复添加数据的问题 情况2----input属性中type=but ...
- ASP.NET MVC/Core表单提交后台模型二级属性验证问题
起因 这个是网友在官网论坛的提问:https://fineui.com/bbs/forum.php?mod=viewthread&tid=22237 重新问题 本着务实求真的态度,我们先来复现 ...
- php表单提交时的身份证号码验证
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- jsp——js事件修改属性样式的两种方法(直接赋值、修改属性)、验证表单符合某要求、阻止表单提交、告诉浏览器不要缓存
代码 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncodi ...
- form的onsubmit事件--表单提交前的验证最佳实现方式
今天遇到了一个问题,页面中include了很多的公共页面(都是没有form的),并且里面好多的地方都是自行提交的(页面中加入一个type=“submit”域,然后js中写入sumbit.click来执 ...
- 原生JS 表单提交验证器
转载:http://www.cnblogs.com/sicd/p/4613628.html 一.前言 最近在开发一个新项目,需要做登陆等一系列的表单提交页面.在经过“缜密”的讨论后,我们决定 不用外部 ...
- 利用JS提交表单的几种方法和验证
第一种方式:表单提交,在form标签中增加onsubmit事件来判断表单提交是否成功 <script type="text/javascript"> function ...
- AngularJS 表单提交后显示验证信息与失焦后显示验证信息
虽然说AngularJS的实时表单验证非常有用,非常高效方便,但是当用户还没有完成输入时便弹出一个错误提示,这种体验是非常糟糕的. 正常的表单验证逻辑应该是在用户提交表单后或完成当前字段中的输入后,再 ...
- 在客户端先通过JS验证后再将表单提交到服务器
问题:想要在客户端先通过JS验证后再将表单提交到服务器 参考资料: jQuery 事件 - submit() 方法 试验过程: 服务器端使用PHP <html> <head> ...
随机推荐
- Windows 10中更新Anaconda和第三方包
=============================== 作为专业的Python开发者,Anaconda包肯定很熟悉 下面总结一下Anaconda的升级和维护 步骤一: 打开cmd,切换到Ana ...
- sleep和 wait
- BatSendMail
@echo off echo ==================================echo == Compress Files And Send Mail ==echo ======= ...
- jquery append、prepend、before等等
1.jQuery append() 方法 jQuery append() 方法在被选元素的结尾插入内容. 实例 复制代码代码如下: $("p").append("Some ...
- Fiddler抓取https设置详解
很多使用fiddler抓包,对于http来说不需太多纠结,随便设置下就能用,但是抓取https就死活抓不了, 出现诸如以下问题: creation of the root certificate wa ...
- Why my setting does not work?
lab mypc server7000 -> 5900 1080 -> 10800 10800 -> inter ...
- asterisk channel driver dev ref
入口函数load_module load_config ast_channel_register console_tech ast_cli_register_multiple ...
- js object对象赋值bug和对象复制clone方法
最近在写程序的时候发现,如果新建一个object对象objb,初始化值为obja,如果改变了objb对象的字段值,那么obja也会随之改变,看来对象赋值传递的是一个引用. 代码重现: <scri ...
- centos6/7安装gitlab
CentOS/RHEL 6/7安装gitlab新建 /etc/yum.repos.d/gitlab-ce.repo,内容为你的CentOS/RHEL版本:centos6 [gitlab-ce] nam ...
- hadoop大数据处理平台与案例
大数据可以说是从搜索引擎诞生之处就有了,我们熟悉的搜索引擎,如百度搜索引擎.360搜索引擎等可以说是大数据技处理技术的最早的也是比较基础的一种应用.大概在2015年大数据都还不是非常火爆,2015年可 ...