javascript 表单验证大全(一)
javascript 表单验证大全(一) 5、身份证验证:包括15位和18位。function idNumber(s)//身份证验证 {regu1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;//15weiregu2=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/;//18weire1=new RegExp(regu1);re2=new RegExp(regu2);if(!(re1.test(s)||re2.test(s))){document.getElementById ("idCardInf").innerHTML="格式不对!";document.getElementById ("idCardInf").style.color="red";}else{document.getElementById ("idCardInf").innerHTML="通过!";document.getElementById ("idCardInf").style.color="green";document.getElementById ("idCardCheck").innerHTML="";}// alert("请正确填写18位或15位身份证号码"); }6、手机号码验证:13和15开头的号码。function isMobileNO(s)//手机验证 {var a = /^((\(\d{3}\))|(\d{3}\-))?13\d{9}|15\d{9}$/ ;if( !s.match(a) ){document.getElementById ("mobileNOInf").innerHTML="格式不对!";document.getElementById ("mobileNOInf").style.color="red"; // alert("手机号码格式不对"); }else{document.getElementById ("mobileNOInf").innerHTML="通过!";document.getElementById ("mobileNOInf").style.color="green";document.getElementById ("mobileNOCheck").innerHTML="";}}7、各表单域提示信息,获得焦点验证。function displayInform(s)//注册信息规则提示信息(获得焦点验证) {if(s=="user")document.getElementById ("userIDCheck").innerHTML="(用户名由4-16个数字或字母组成)";if(s=="password")document.getElementById ("passwordCheck").innerHTML="(密码由6-16个数字、字母、下划线组成,首字母必须是字母,不区分大小写)";if(s=="passwordC")document.getElementById ("confirmCheck").innerHTML="(两次密码输入必须一致)";if(s=="idCard")document.getElementById ("idCardCheck").innerHTML="(请输入正确的号码,以便你更容易找回密码)";if(s=="mobileNO")document.getElementById ("mobileNOCheck").innerHTML="(请输入正确的号码,以便你更快找回密码)";if(s=="email")document.getElementById ("emailCheck").innerHTML="(请输入正确的邮箱地址,以便你更容易找回密码)";}8、表单提交验证:先对必填项进行非空验证,再进行匹配验证。function submitValidator() //提交验证 {if(document.getElementById("control").style.display=="inline"){if((document.getElementById ("user").value=="")||(document.getElementById("password").value=="")||(document.getElementById("passwordC").value=="")||(document.getElementById("answer").value=="")||(document.getElementById("question").value=="")){alert("必填项不能为空!");return false;}else{if((document.getElementById ("user").value).match(/^[0-9a-zA-Z]{4,16}$/)&&(document.getElementById("password").value).match(/^[a-zA-Z][0-9a-zA-Z_]{5,15}$/)&&(document.getElementById ("password").value.toLowerCase()==document.getElementById ("passwordC").value.toLowerCase())){return true;}else{alert("输入格式不对");return false;}}}else{if((document.getElementById ("user").value=="")||(document.getElementById("password").value=="")||(document.getElementById("passwordC").value=="")||(document.getElementById("answer").value=="")){alert("必填项不能为空!");return false;}else{if((document.getElementById ("user").value).match(/^[0-9a-zA-Z]{4,16}$/)&&(document.getElementById("password").value).match(/^[a-zA-Z][0-9a-zA-Z_]{5,15}$/)&&(document.getElementById ("password").value.toLowerCase()==document.getElementById ("passwordC").value.toLowerCase())){return true;}else{alert("输入格式不对");return false;}}}本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/diershi/archive/2009/04/16/4084981.aspx JS表单验证<script language="JavaScript"> /* *--------------- 客户端表单通用验证CheckForm(oForm) ----------------- * 功能:通用验证所有的表单元素. * 使用: * <form name="form1" οnsubmit="return CheckForm(this)"> * <input type="text" name="id" check="^\S+$" warning="id不能为空,且不能含有空格"/> * <input type="submit"/> * </form> * author:wanghr100(灰豆宝宝.net) * email:wanghr100@126.com * update:19:28 2004-8-23 * 注意:写正则表达式时一定要小心.不要让"有心人"有空子钻. * 已实现功能: * 对text,password,hidden,file,textarea,select,radio,checkbox进行合法性验证 * 待实现功能:把正则表式写成个库. *--------------- 客户端表单通用验证CheckForm(oForm) ----------------- */ //////主函数 function CheckForm(oForm) {var els = oForm.elements;//遍历所有表元素for(var i=0;i<els .length;i++){//是否需要验证if(els.check){//取得验证的正则字符串var sReg = els.check;//取得表单的值,用通用取值函数var sVal = GetValue(els);//字符串->正则表达式,不区分大小写var reg = new RegExp(sReg,"i");if(!reg.test(sVal)){//验证不通过,弹出提示warning alert(els.warning);//该表单元素取得焦点,用通用返回函数 GoBack(els) return false;}}} }//通用取值函数分三类进行取值 //文本输入框,直接取值el.value //单多选,遍历所有选项取得被选中的个数返回结果"00"表示选中两个 //单多下拉菜单,遍历所有选项取得被选中的个数返回结果"0"表示选中一个 function GetValue(el) {//取得表单元素的类型var sType = el.type;switch(sType){case "text":case "hidden":case "password":case "file":case "textarea": return el.value;case "checkbox":case "radio": return GetValueChoose(el);case "select-one":case "select-multiple": return GetValueSel(el);}//取得radio,checkbox的选中数,用"0"来表示选中的个数,我们写正则的时候就可以通过0{1,}来表示选中个数 function GetValueChoose(el){var sValue = "";//取得第一个元素的name,搜索这个元素组var tmpels = document.getElementsByName(el.name);for(var i=0;i<tmpels .length;i++){if(tmpels.checked){sValue += "0";}}return sValue;}//取得select的选中数,用"0"来表示选中的个数,我们写正则的时候就可以通过0{1,}来表示选中个数 function GetValueSel(el){var sValue = "";for(var i=0;i<el.options.length;i++){//单选下拉框提示选项设置为value=""if(el.options.selected && el.options.value!=""){sValue += "0";}}return sValue;} }//通用返回函数,验证没通过返回的效果.分三类进行取值 //文本输入框,光标定位在文本输入框的末尾 //单多选,第一选项取得焦点 //单多下拉菜单,取得焦点 function GoBack(el) {//取得表单元素的类型var sType = el.type;switch(sType){case "text":case "hidden":case "password":case "file":case "textarea": el.focus();var rng = el.createTextRange(); rng.collapse(false); rng.select();case "checkbox":case "radio": var els = document.getElementsByName(el.name);els[0].focus();case "select-one":case "select-multiple":el.focus();} } </script> 通用表单函数测试: <form name="form1" οnsubmit="return CheckForm(this)"> test:<input type="text" name="test"/>不验证<br /> 账号:<input type="text" check="^\S+$" warning="账号不能为空,且不能含有空格" name="id"/>不能为空<br /> 密码:<input type="password" check="\S{6,}" warning="密码六位以上" name="id"/>六位以上<br /> 电话:<input type="text" check="^\d+$" warning="电话号码含有非法字符" name="number" value=""/><br /> 相片上传:<input type="file" check="(.*)(\.jpg|\.bmp)$" warning="相片应该为JPG,BMP格式的" name="pic" value="1"/><br /> 出生日期:<input type="text" check="^\d{4}\-\d{1,2}-\d{1,2}$" warning="日期格式2004-08-10" name="dt" value=""/>日期格式2004-08-10<br /> 省份: <select name="sel" check="^0$" warning="请选择所在省份"> <option value="">请选择 </option><option value="1">福建省 </option><option value="2">湖北省 </option></select> <br /> 选择你喜欢的运动:<br /> 游泳<input type="checkbox" name="c" check="^0{2,}$" warning="请选择2项或以上"/> 篮球<input type="checkbox" name="c"/> 足球<input type="checkbox" name="c"/> 排球<input type="checkbox" name="c"/> <br /> 你的学历: 大学<input type="radio" name="r" check="^0$" warning="请选择一项学历"/> 中学<input type="radio" name="r"/> 小学<input type="radio" name="r"/> <br /> 个人介绍: <textarea name="txts" check="^[\s|\S]{20,}$" warning="个人介绍不能为空,且不少于20字"></textarea>20个字以上 <input type="submit"/> </form> --------------------------------------------- Javascript表单编程对form元素进行脚本编写获取表单的引用var oForm = document.forms[0]; //得到第一个表单var oOtherForm = document.forms["formz"] //得到名为formz的表单 访问表单字段var oTextbox1 = oForm.textbox1; //得到名为"textbox"的字段var oTextbox1 = oForm["text box 1"] //得到名为"text box 1"的字段 表单字段共性var oField 1 = oForm.elements[0];oField1.focus(); //设置焦点到第二个字段获得焦点:document.forms[0].name1.focus();表单提交使用图片进行提交<input type="image" src="submit.gif" />使用submit进行提交<input type="submit" value="submit" />表单重置<input type="button" value="Reset" οnclick="document.forms[0].reset()">对文本框进行脚本编写获取/更改文本框的值选择文本<input type="button" value="选择文本" οnclick="selectText()">文本框事件<input type="text" name="textbox1" value="" οnselect="alert('select')" />自动选择文本<input type="text" οnfοcus="this.select()" /><textarea οnfοcus="this.select()"></textarea>对列表框和组合框进行脚本编写访问选项获取/更改选中项添加选项var ListUtil = new Object();ListUtil.add = function(oListbox, sName, sValue){option.appendChild(document.createTextNode(sName));}删除选项var oListbox = document.getElementsById("selListbox");oListbox.remove(0); //移除一个选项 移动选项重新排序选项对复选框和单选框进行脚本编写得到单选框的值<input type="radio" id="male" name="gender" value="male">男</input>document.getElementById("male").value得到复选框的值表单验证使用submit事件在错误发生之后捕获错误使用change事件在错误发生时捕获使用keypress事件在错误发生之前捕获错误表单效验最佳实践必须对用户有帮助不要让人讨厌只要有可能,就用HTML功能代替javascript一次显示所有错误早点捕获错误如果拿不准,就不要太严格 ------------------------------------------------代码实例: <script type="text/javascript">//function validate(){// var user = document.getElementById("user"); // user.disabled="true"; //表示不可用 // user.focus(); //得到焦点 // οnfοcus="validate();" //当某个文本框得到焦点时触发 // οnblur="validate()" //当某个文本框失去焦点时触发///}//获取表单的四种方式 //function validate(){//var form1 = document.getElementById("form1");//var form = document.forms[0];//var form = document.forms["form1"];//var form = document.form1;//alert(form==form1) //获取表单中的元素 //var a = form1.user; //var a = form1.elements[0]; //var a = form1.elements["user"]; //alert(a.value) //表单提交 //form1.submit(); //}//获取单选框的值 // function validate(){ // var form1 = document.getElementById("form1");//var user = form1.user;//user.focus();//user.select(); //选中文本框的内容//var rName = document.getElementsByName("radioName"); // var a = form1.radioName; // for(var i=0;i<a.length;i++){ // if(a[i].checked){ // alert(a[i].value) // } // } //}//获取复选框的值 /** function validate(){var form1 = document.getElementById("form1");var check = form1.checkName;for(var i=0;i<check.length;i++){if(check[i].checked){alert(check[i].value)}}}**/function validate(){} //onchange事件 function chage(){var user = document.getElementById("user");if(user.value==""){document.getElementById("span1").innerHTML="用户名不能为null";user.focus();return false;}else{document.getElementById("span1").innerHTML="用户名合法";return ture;}}</script><img name="img1" src="C:\Documents and Settings\黄\桌面\1.jpg" width="200px" height="200px"><select οnchange="document.img1.src=options[selectedIndex].value"><option value="C:\Documents and Settings\黄\桌面\ff.gif">敬敬</option><option value="C:\Documents and Settings\黄\桌面\ff.gif">敬敬</option><option value="C:\Documents and Settings\黄\桌面\1.jpg">敬敬</option></select>Document对象在检验表单中的作用 在制作登录表单验证的过程中,我们经常要用到Document函数对象,这是JavaScript非常重要的函数。W3C把它纳入DOM文档模型对象中。可以说它是元素操作的一个十分重要的方法。 此函数的语法代码如下: Document.ement.chosts.x //x可表示为属性也可表示为方法。 如要表示表单reg中名字输入框name的文本内容:document.reg.name.value 要让输入框获得焦点:代码格式为document.reg.name.focus() 下面是一段典型的验证输入函数代码: <script language="javascript"> function chekname(){name=document.reg.name.value; if(name==""){alert("请输入昵称!");document.reg.name.vlaue=focus(); 或document.reg.name.focus() ;return false; }else{open("chkname.php?name="+name+"","chk","noscrollbars=no,width=200,height=50,top=200,left=200"); } } </script> 此段自定义函数的意思是验证输入框是不是空白,若不是空白则打开一个名为“chk”带有传递参数的窗口进一步验证用户名是不是合法。 Document对象在检验表单中的作用
转载于:https://www.cnblogs.com/yuesha/articles/5438107.html
javascript 表单验证大全(一)相关推荐
- 表单验证-通用表单验证大全/通用表单验证函数收集
表单验证-通用表单验证大全/通用表单验证函数收集_Web设计论坛 文章来源:IT人才网(http://www.ad0.cn) Javascript表单验证函数大全: 复制内容到剪贴板代码: <s ...
- 10个强大的Javascript表单验证插件推荐
创建一个JavaScript表单验证插件,可以说是一个繁琐的过程,涉及到初期设计.开发与测试等等环节.实际上一个优秀的程序员不仅是技术高手,也应该是善假于外物的.本文介绍了10个不错的JavaScri ...
- html表单验证js代码,JavaScript表单验证实现代码
JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证 JavaScript 表单验证 JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输 ...
- 15个最佳的 JavaScript 表单验证库
客户端验证在任何项目都是不够的,因为 JavaScript 可以直接忽略,人们可以提交请求到服务器. 然而这并不意味着客户端验证都没必要了,很多时候我们需要在用户提交到服务器之前给予提示.JavaSc ...
- 15个非常实用的JavaScript表单验证库
来源:web前端开发 https://mp.weixin.qq.com/s/p9s9cmAt2MZeCgmD2LC5Sg 客户端验证在任何项目都是不可缺少的,很多时候我们需要在用户提交到服务器之前给予 ...
- html自动验证邮件地址格式,JavaScript表单验证和邮箱格式验证的方法
JavaScript 表单验证 JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证. 被 JavaScript 验证的这些典型的表单数据有: 用户是否已填写表单 ...
- HTML通过JavaScript表单验证
HTML通过JavaScript表单验证 用户在填写表单的时候,我们程序对其进行验证是必须的,随便举个例子: <!DOCTYPE html> <html lang="en& ...
- 注册表单校验 js java,JavaScript表单验证完美代码
用原生JS写一个简单的表单验证 首先,是html部分 新用户注册 基本信息 用户名: 请输入至少3位的用户名 密码: 请输入4到8位的密码 确认密码: 请再输入一遍密码 手机号码: 请输入11位手机号 ...
- JavaScript 表单验证
JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证. 被 JavaScript 验证的这些典型的表单数据有: 用户是否已填写表单中的必填项目? 用户输入的邮件地 ...
最新文章
- nodejs原生模块简介
- CentOS防火墙配置方法-详细解读如何配置CentOS防火墙
- java打出三角形乘法表_Java 练习(输出三角形,九九乘法表, 100以内的质数)
- (RabbitMQ) Java Client API Guide
- 【Python】Python中的列表操作
- linux网络编程——webserver服务器编写
- prop()和attr()
- AnyChat视频直播系统全面分析
- ImageView加载本地图片资源
- 企业之pacemaker基本概念及其原理
- 网页上使用按键代替鼠标点击按钮
- android调用webservice,Android开发调用WebService的方法示例
- 软件测试面试英文自我介绍,软件测试英文面试自我介绍范文
- 利用github和hexo一步步生成个人博客(2)---基本配置和发表文章
- 使用pytorch搭建AlexNet网络模型
- 阿里云免费SSL证书续费步骤 TOMCAT
- k8s查看集群信息及基本命令
- 企业中如何做好文化建设?
- 二、springBoot 整合 mybatis 项目实战
- 从 xp_cmdshell 中使用 dtexec 运行SSIS包
热门文章
- 如何在Ubuntu 16.04安装R
- c#_winform打开关闭时淡入淡出
- c#_List<T>(IEnumerable<T>)
- 线程撕裂者安装linux,Linux FreeBSD 12.1跑分测试:在AMD Ryzen线程撕裂者3970X上快得刷新认知...
- as本地仓库更改_Android Studio 之 Gradle与Project Structure详解
- 错误LNK1107文件无效或损坏: 无法在 0x338 处读取
- 编写java程序的常见问题_Java程序的编写与执行、Java新手常见的问题解决
- linux文件类型为ext4怎么扩展,如何扩展ext4分区和文件系统?
- 洛谷P1027 Car的旅行路线 计算几何 图论最短路
- vue数据源转json问题