代码段:js表单提交检测
市面上当然有很多成型的框架,比如jquery的validation插件各种吧。现在工作地,由于前端童鞋也没用这些个插件。根据业务的要求,自己就在代码里写了个简单的表单提交的检测代码(php的也写了一个哈哈),类也封装的不太完善,很多校验规则也没做,类里边对传入参数也没做啥改动,算是不健壮吧(主要自己不会坑自己,老实的该传什么就传什么了哈哈)。业务上主要就是对表单字段的必填啊,类型啊,长度这些个限制。
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript"> function Submit_check(obj){
this.obj = obj;
this.str = '';
this.arr = {
'empty_arr':[[], '不能为空'], // 元素为空数组
'type_arr':[[], '类型不正确'], // 元素类型不正确
'length_arr':[[], '字符过长'] // 元素过长
};
this.alert_str = function(){
// 遍历满足情况
for(var x in this.obj){
var name = this.obj[x][0];// 表单字段的中文名
var value = this.obj[x][1];// 字段的值
// 为空
if (typeof value == 'undefined' || value == '' ){
this.arr.empty_arr[0].push(name);
} else {
// 类型错误
if (this.obj[x][3] !='' && this.obj[x][3] != typeof value) this.arr.type_arr[0].push(name);
// 长度过长
if (this.obj[x][2] !=0 && this.obj[x][2] < value.length) this.arr.length_arr[0].push(name);
}
}
// 输出str
for(var y in this.arr){
if (this.arr[y][0].length){
this.str += this.arr[y][0].join(',')+' '+this.arr[y][1]+'\n';
}
}
return this.str;
}
} var a1 = 'b',
b1 = 12,
c1 = 'aaadsfaaaaaab',
d1 = 'a',
e1 = ''; // key->表单字段英文名 value内数组顺序-->字段中文名、值、长度、类型;
// 长度为0表示不需要检测长度;类型为空表示不需要检测类型
var obj = {
'a' : ['地球', a1, 10, 'number'],
'b' : ['火星', b1, 0, 'number'],
'c' : ['月球', c1, 8, ''],
'd' : ['土星', d1, 12, 'string'],
'e' : ['木星', e1, 8, '']
};
var str = new Submit_check(obj).alert_str();
if (str){
alert(str);
} </script>
代码段:js表单提交检测的更多相关文章
- js表单提交,判断文本框,用户名密码是否为空,JS表单检测!
当表单提交时先触发验证的js代码,当验证表单的方法返回true时才会提交表单返回false则不提交数据<script type="text/javascript">fu ...
- 原生JS 表单提交验证器
转载:http://www.cnblogs.com/sicd/p/4613628.html 一.前言 最近在开发一个新项目,需要做登陆等一系列的表单提交页面.在经过“缜密”的讨论后,我们决定 不用外部 ...
- js表单提交,面向对象
一.js表单验证之后再提交 1.普通按钮onclick函数调用表单的submit()函数 <input type=button name="submit1" value=&q ...
- JS表单提交的几种方式
第一种方式 : 表单提交,在 form 标签中增加 onsubmit 事件来判断表单是否提交成功 <script type="text/javascript"> fun ...
- js表单提交回调函数
在研究表单的时候发现一个有意思的东西——在表单提交的时候如何保证数据全部提交完毕才会清空? 我们常用的<input type="reset" value="重置&q ...
- js表单提交一种方式
在一个html和php混编的文件中,用到js提交表单的方法: 定义表单id为form1,提交按钮type为submit, var data_info = document.getElementById ...
- html js 表单提交前检测数据
通过使用form的onsibmit来控制是否提交数据 返回值为真是提交,其他不变,示例如下: JS部分 function check() { var newPwd = document.getElem ...
- js 表单提交
方式一: 使用input type="submit" 提交 <form action="http://www.w3school.com.cn/tiy/loadtex ...
- js表单提交到后台对象接收
$.extend({ StandardPost:function(url,args){ var form = $("<form method='post' target='_blank ...
随机推荐
- innerHTML在ie9有部分无法添加
在高版本的浏览器,innerHTML就如正常时候,里面可以套任何字符串,但是在ie9下,innerHTML不能是table ,tr td等标签字符串,解决方法如下: 在table添加一个tr var ...
- 编译64位cu文件的设置
作者:朱金灿 来源:http://blog.csdn.net/clever101 CUDA(ComputeUnified Device Architecture),是显卡厂商NVIDIA推出的运 ...
- 华Xia相机WEB后台设置
1:设备维护->设备信息:出入口类型:入口2:更多参数->屏显参数:屏显协议18 3:更多参数->外设参数:RS581-1 串口使能勾上 串口工作模式 屏显控制 96004:更多参数 ...
- openCV 视频分解及合成
1. 视频分解 import cv2 # ************************** # 分解视频 cap=cv2.VideoCapture('1.mp4')#获取一个视频cap isOpe ...
- FAST特征点检测算法
一 原始方法 简介 在局部特征点检测快速发展的时候,人们对于特征的认识也越来越深入,近几年来许多学者提出了许许多多的特征检测算法及其改进算法,在众多的特征提取算法中,不乏涌现出佼佼者. 从最早期的Mo ...
- Freemarket语法
<#--freemarker HashMap取值--> <#assign maps={"1":"张三丰","2":&quo ...
- 可选的binlog解析组件
本文的mysql-binlog-connector-java:https://github.com/shyiko/mysql-binlog-connector-java 阿里的canal:https: ...
- 大话存储 1 - 走进计算机IO世界
组成计算机的三大件:CPU,内存和IO. 1 总线 总线就是一条或者多条物理上的导线,每个部件都接到这些导线上,同一时刻只能有一个部件在接收或者发送. 仲裁总线:所有部件按照另一条总线,也就是仲裁总线 ...
- django —— 邮件
官方文档 1.11 配置settings.py # QQ邮箱为例, 其他邮箱对应的SMTP配置可查官方 EMAIL_HOST = "smtp.qq.com" EMAIL_PORT ...
- Java重要类详解之ArrayList类
https://blog.csdn.net/shengmingqijiquan/article/details/52634640 一.ArrayList概述 ArrayList 是一个数组队列,相当于 ...