一个写的挺干净的form表单验证,简洁
2015-07-01 11:47
302 查看
/* 输入框检测js代码 用法: <form action = '' onsubmit="return FormValid.valid(this);"> */ var FormValid = { valid : function( obj ) { var elements = obj.elements; var length = elements.length; for( var i=0;i<length;i++ ) if( valid = elements[ i ].getAttribute( 'valid' ) ) if( !this.docheck( valid,elements[ i ] ) ) { alert( elements[ i ].getAttribute( 'errmsg' ) ); return false; } return true; }, Reg : { isQQ : /^[1-9]\d{4,11}$/, isNumber : /^[1-9]\d{1,}/, isZip : /^[1-9]\d{5}$/, isMobile : /^(13|15|18)\d{10}$/, isPhone : /^0\d{2,3}-\d{7,8}$/, isInt : /^[-\+]?\d+$/, isEmail : /([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)/ }, docheck : function( valid,node_obj ) { switch( valid ) { case 'isQQ': case 'isNumber': case 'isZip': case 'isMobile': case 'isPhone': case 'isInt': case 'isEmail': var result = this.doReg( valid,node_obj ); break; default: var result = eval( 'this.' + valid + '( node_obj );' ); break; } if( !result ) node_obj.focus(); return result; }, doReg : function( valid,node_obj ) { var regexp = this.Reg[ valid ] ; var result = regexp.test( node_obj.value ); if( !result ) node_obj.focus(); return result; }, required : function( node_obj ) { return node_obj.value != ''; }, range : function( node_obj ) { return node_obj.value>=node_obj.getAttribute( 'min' ) & node_obj.value<=node_obj.getAttribute( 'max' ); }, eq : function( node_obj ) { return node_obj.value == node_obj.getAttribute( 'eqValue' ); }, gt : function( node_obj ) { return node_obj.value >=node_obj.getAttribute( 'gtValue' ); } }
相关文章推荐
- python内嵌C代码使用(pyinline)
- PCI、PCIE
- 点击Listview弹出PopWindow的用法
- Android Wear 数据类型和接口的发送和同步数据概述
- 又到毕业季:用“创意”吸引企业
- uiview 永久旋转动画
- TNS-12541,TNS-12560,TNS-00511,TNS-12542,TNS-12560,TNS-00512数据库启动监听报错
- 文件读写——fopen
- Socket 通信原理(Android客户端和服务器以TCP&&UDP方式互通)
- hdu 1026 Ignatius and the Princess I
- Ubuntu14.04搭建android5.1开发环境和编译
- AIR调用外部程序代码
- 函数指针和函数对象
- 微信开发定时刷新accessToken
- 什么是mime类型
- iOS Cocoa框架介绍
- 锐评:手游安全破“黑”行动
- Feature extraction - sklearn文本特征提取
- 自定义tabbar
- android对handler及asynctask的一个例子