js验证form表单示例
js验证form表单示例
检测测试了js表单验证,无jQuery(简单的功能有时无需jQuery版本)





js代码如下:
<script type="text/javascript">
function S(ba, hZ) {
try {
return (hZ && (hZ.document || hZ) || document).getElementById(ba);
}
catch (cg) {
return null;
}
}
var show = function(id, isVisible) {
var s1 = isVisible ? "" : "none";
S(id).style.display = s1;
}
var checkAlias = function() {
var _oForm = S("form1"), _oReg = /^[0-9a-zA-Z\.\-_]{4,32}$/, _oRegErr = /(^[\.\-_])|([\.\-_]$)/, _oRegErr2 = /[\.\-_][\.\-_]/, _bInvalid = false, _sMsg = "";
_oForm.alias.value = _oForm.alias.value.trim();
if (_oForm.alias.value == "") {
_bInvalid = true;
_sMsg = "请填写管理员帐号";
}
else if (_oForm.alias.value.length < 4 || _oForm.alias.value.length > 32) {
_bInvalid = true;
_sMsg = "帐号长度不对";
}
else if (!_oReg.test(_oForm.alias.value)) {
_bInvalid = true;
_sMsg = "帐号格式错误";
}
else if (_oRegErr.test(_oForm.alias.value)) {
_bInvalid = true;
_sMsg = "点、减号或下划线不能放在开头或结尾";
}
else if (_oRegErr2.test(_oForm.alias.value)) {
_bInvalid = true;
_sMsg = "点、减号或下划线不能连续出现";
}
if (_bInvalid) {
S("msg_alias_reason").innerHTML = _sMsg;
show("msg_alias_err", true);
show("msg_alias_ok", false);
return false;
}
else {
show("msg_alias_err", false);
show("msg_alias_ok", true);
}
return true;
};
var checkEmail = function() {
var _oForm = S("form1"), _oRegErr = /(^[\.\-_])|([\.\-_]$)/, _oRegEmail = /^(\w)+(\.\w+)*@(\w)+((\.\w+)+)$/, _bInvalid = false, _sMsg = "";
_oForm.email.value = _oForm.email.value.trim();
if (_oForm.email.value == "") {
_bInvalid = true;
_sMsg = "邮箱地址不能为空";
}
else if (_oRegErr.test(_oForm.email.value)) {
_bInvalid = true;
_sMsg = "点、减号或下划线不能放在开头或结尾";
}
else if (_oForm.email.value.length < 10 || _oForm.email.value.length > 32) {
_bInvalid = true;
_sMsg = "请输入正确的邮箱地址";
}
else if (!_oRegEmail.test(_oForm.email.value)) {
_bInvalid = true;
_sMsg = "邮箱格式错误,请重试";
}
if (_bInvalid) {
S("msg_email_reason").innerHTML = _sMsg;
show("msg_email_err", true);
show("msg_email_ok", false);
return false;
}
else {
show("msg_email_err", false);
show("msg_email_ok", true);
}
return true;
};
var checkFormInput = function() {
if (checkAlias() && checkEmail())
return true;
return false;
};
</script>
HTML代码如下:
<form id="form1" method="get" name="form1" onsubmit="return checkFormInput();">
<input type="hidden" name="action" value="signin" />
<div name="Content" class="mainPanel wd txt_left" style="margin-top:20px;">
<div class="regPanel">
<div class="b_size" style="padding:35px;">
<div class="">
<h2 class="bd" style="border-width:0 0 1px 0">用户注册 <span class="notice">(用来管理您企业邮的帐号)</span></h2>
<div class="formPanel" style="padding:20px 0 10px;">
<div class="tr">
<label class="colum" title="管理员帐号用来登录企业邮箱管理面板">用户名:</label>
<input type="text" class="txt b_size" value="" name="alias" onfocus="" onblur="checkAlias();" maxlength="32">
<span id="msg_alias_err" style="padding:0 5px; display:none;"><img align="absmiddle" class="icon_disable_m img_pad" src="dot.gif"><span id="msg_alias_reason" class="txt_red f_size">请填写管理员帐号</span></span>
<span id="msg_alias_ok" style="display: none; "><img align="absmiddle" class="icon_finish_m" src="dot.gif"></span>
</div>
<div class="addrtitle tr f_size tipsInfo">帐号由字母、数字组成,点(.)减号(-)下划线(_)不能放在开头或结尾,也不能连续出现</div>
<div class="tr">
<label class="colum" title="管理员帐号用来登录企业邮箱管理面板">邮箱地址:</label>
<input type="text" class="txt b_size" value="" name="email" onfocus="" onblur="checkEmail();" maxlength="32">
<span id="msg_email_err" style="padding:0 5px; display:none;"><img align="absmiddle" class="icon_disable_m img_pad" src="dot.gif"><span id="msg_email_reason" class="txt_red f_size">请填写管理员帐号</span></span>
<span id="msg_email_ok" style="display: none; "><img align="absmiddle" class="icon_finish_m" src="dot.gif"></span>
</div>
<div class="addrtitle tr f_size tipsInfo">请输入邮箱地址</div>
</div>
</div>
<div class="submitColumn" style="padding-left:105px;"><input type="submit" class="btnSubmit b_size" value="确定"> <a href="/">取消</a></div>
</div>
</div>
</div>
</form>
js验证form表单示例的更多相关文章
- 第十七篇 JS验证form表单
JS验证form表单 这节课做一个实际的,项目里会遇到的东西,例如登录页面,我们输入‘用户名’和‘密码’或者‘手机号’还有‘验证码’等等,它都会做一个前端验证,比如验证码,是6位有效数字组成,那么 ...
- js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题
js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题 js模拟form表单提交数据源码: /** * js模拟form表单提交 * @param ...
- js重置form表单
CreateTime--2017年7月19日10:37:11Author:Marydon js重置form表单 需要使用的方法:reset() 示例: HTML部分 <form id=&qu ...
- JS 提交form表单
源码实例一:javascript 页面加裁时自动提交表单Form表单:<form method="post" id="myform" action=&qu ...
- js阻止form表单重复提交
防止表单重复提交的方法总体来说有两种,一种是在js中阻止重复提交:另一种是在后台利用token令牌实现,大致思路是生成一个随机码放到session和form表单的隐藏输入框中,提交表单时两者对比,表单 ...
- 使用js提交form表单的两种方法
提交form表单的时候瑶族一些简单的验证,验证完后才能提交,避免无效提交. 1.当输入用户名和密码为空的时候,需要判断.这时候就用到了校验用户名和密码,这个需要在前端页面写:有两种方法,一种是用sub ...
- jQuery.Validate.js验证大表单的优化
最近在项目中有遇到一个Form表单中有200多个标签.在提交表单时网页会出现等待时间很长,甚至会出现网页奔溃的情况. 主要的原因是因为在使用jQuery.Validate.js进行Form验证的时候会 ...
- Js 提交 form 表单
本文主要讲如何使用Js提交表单,在使用ajax进行异步验证的多数情况下,需要使用Js提交表单,以下简单说几种提交表单的方式: 1.document.getElementById("formI ...
- 参数传递的四种形式----- URL,超链接,js,form表单
什么时候用GET, 查,删, 什么时候用POST,增,改 (特列:登陆用Post,因为不能让用户名和密码显示在URL上) 4种get传参方式 <html xmlns="http:/ ...
随机推荐
- Python接口测试之moco
在现在的软件开发过程中,特别是app的部分,需要的很多数据以及内容,都是来自server端的API,但是不能保证 在客户端开发的时候,api在server端已经开发完成,专门等着前端来调用,理想的情况 ...
- [codeforces538E]Demiurges Play Again
[codeforces538E]Demiurges Play Again 试题描述 Demiurges Shambambukli and Mazukta love to watch the games ...
- JAVA自定义监听器的示例代码
JAVA用户自定义事件监听完整例子 JAVA用户自定义事件监听完整例子- —sunfruit 很多介绍用户自定义事件都没有例子,或是例子不全,下面写了一个完整的例子,并写入了注释以便参考,完整 ...
- Codevs 队列练习 合并版
3185 队列练习 1 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 给定一个队列(初始为空),只有两种操作入队和出队,现给出这 ...
- eclispe使用
eclipse 快捷键 ctrl+shif+o :去除多余引用 ctrl+shift+x :转大写 ctrl+shift+y :转小写 ctrl+o :查找方法 Alt+ ← :回 ...
- gcc,gdb基础学习1
gcc: (1)gcc -O1 -S code.c 这里的-S可以的到code.c的汇编(只进行了预处理和编译这:两个阶段形成 了汇编代码code·s) (2)gcc -c code.c 这里 ...
- CSS介绍&选择器&选择器优先级
CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素. 当浏览器读到一个样式表,它就会按照这个样式表来对文档进行格式化(渲染). CSS语法 '''se ...
- SQL SERVER 2012 第四章 连接 JOIN语句的早期语法结构 & 联合UNION
1/内部连接的早期语法结构 INNER JOIN SELECT * FROM Person.Person JOIN HumanResources.Employee ON Person.Person.I ...
- 洛谷—— P1133 教主的花园
https://www.luogu.org/problem/show?pid=1133 题目描述 教主有着一个环形的花园,他想在花园周围均匀地种上n棵树,但是教主花园的土壤很特别,每个位置适合种的树都 ...
- lombok注解
官方文档:@EqualsAndHashCode 转:https://blog.csdn.net/zhanlanmg/article/details/50392266 1. 此注解会生成equals(O ...