搜索
首页web前端html教程HTML 表单和验证事件

1、表单验证

(1).非空验证(去空格)

(2).对比验证(跟一个值对比)

(3).范围验证(根据一个范围进行判断)

(4).固定格式验证:电话号码,身份证号,邮箱,信用卡号等的验证;需要用到正则表达式来进行验证。

(5).其它验证

2、正则表达式

用符号来描述书写规则:/ 中间写正则表达式 /

^ :匹配开头,$:匹配结尾 ; /^ve/以ve开头的 /ve$/以ve结尾

\d:一个任意的数字

\w:一个任意的数字或字母

\s:一个任意的字符串

{n}:把左边的表达式重复n遍

{m,n}:把左边的表达式重复至少m遍,至多n遍
    {m, }:把左边的表达式重复至少m遍,,至多不限

+:左边的表达式,至少出现一次,至多不限,相当于{1,}

*:左边的表达式,至少出现0次,至多不限,相当于{0,}

?:左边的表达式,至少出现0次,至多出现1次,相当于{0,1}

[a,b,c]:只能取方括号中内容之一

[a-z]或[1-9]:在范围中取其一

|:代表或者; ():优先级; \:转义--“\( \)”这个才是要出现的小括号,需要转义

3、事件

事件有三要素:事件源、事件数据、事件处理程序

可以加return false;是阻止默认操作

onclick: 鼠标单击触发

ondblclick: 双击触发

onmouseover: 鼠标移动上面触发

onmouseout: 鼠标离开时触发

onmousemove: 鼠标在上面移动时触发

onchange: 只要内容改变触发

onblur: 失去焦点时触发

onfocus: 获得焦点时触发

onkeydown: 按键按下的时候触发

onkeyup:按键抬起来的时候触发

onkeypress:事件在用户按下并放开任何字母数字键时发生。但是系统按钮(例如:箭头键、功能键)无法得到识别。

例子:根据正则表达式验证邮箱

   function checkemail()   {    var v4 = trim(u4.value);    var reg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;    if(v4.match(reg) != null)    {        imgs4.setAttribute("src","imges/1.png");        return true;    }    else    {        imgs4.setAttribute("src","imges/2.png");        return false;    } }

 

 

 

正则表达式补充:

建立正则表达式的方法:

 

var patten= new RegExp(/^[0-9]{17}[0-9|X]$/);/*RegExp()括号里面的式子需要自己定义:

1[]里面只有一个元素

2()里面可以写一个单词或者式子3{}里面表示数量
4^:以某个元素开头,写在元素前面
5$:以某个元素结束,写在元素后面*/

 

例:

1、正则表达式验证身份证:

身份证:

/*javascript部分*/  

var a= document.getElementById("1").value;  var patten= new RegExp(/^[0-9]{17}[0-9|X]$/);  

if(patten.test(a))  

{      alert("输入正确");  }  

else 

{      alert("输入错误");  }

 

 

2、正则表达式验证邮箱:

 

邮箱:提交" onclick="mail()" />

 

function mail()

{    

var patten2= new RegExp(/^[0-9|A-z|_]{1,17}[@][0-9|A-z]{1,3}.(com)$/)    

var mail = document.getElementById("2").value;    

if(patten2.test(mail))      

{          alert("输入正确");      }

    else      

{          alert("输入错误");      }

}

 

 

 

 

常用正则表达式:

  匹配国内电话号码:d{3}-d{8}|d{4}-d{7}  
    评注:匹配形式如 0511-4405222 021-87888822  
    匹配腾讯QQ号:[1-9][0-9]{4,}  
    评注:腾讯QQ号从10000开始  
    匹配中国邮政编码:[1-9]d{5}(?!d)  
    评注:中国邮政编码为6位数字  
    匹配身份证:d{15}|d{18}  
    评注:中国的身份证为15位或18  
    匹配ip地址:d+.d+.d+.d+  
    评注:提取ip地址时有用  
    匹配特定数字:  
    ^[1-9]d*$      //匹配正整数  
    ^-[1-9]d*$    //匹配负整数  
    ^-?[1-9]d*$     //匹配整数  
    ^[1-9]d*|0$   //匹配非负整数(正整数 + 0  
    ^-[1-9]d*|0$     //匹配非正整数(负整数 + 0  
    ^[1-9]d*.d*|0.d*[1-9]d*$     //匹配正浮点数  
    ^-([1-9]d*.d*|0.d*[1-9]d*)$   //匹配负浮点数  
    ^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$   //匹配浮点数  
    ^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$     //匹配非负浮点数(正浮点数 + 0  
    ^(-([1-9]d*.d*|0.d*[1-9]d*))|0?.0+|0$    //匹配非正浮点数(负浮点数 + 0  
    评注:处理大量数据时有用,具体应用时注意修正  
    匹配特定字符串:  
    ^[A-Za-z]+$    //匹配由26个英文字母组成的字符串  
    ^[A-Z]+$    //匹配由26个英文字母的大写组成的字符串  
    ^[a-z]+$    //匹配由26个英文字母的小写组成的字符串  
    ^[A-Za-z0-9]+$    //匹配由数字和26个英文字母组成的字符串  
    ^w+$    //匹配由数字、26个英文字母或者下划线组成的字符串  
    在使用RegularExpressionValidator验证控件时的验证功能及其验证表达式介绍如下:  
    只能输入数字:“^[0-9]*$”  
    只能输入n位的数字:“^d{n}$”  
    只能输入至少n位数字:“^d{n,}$”  
    只能输入m-n位的数字:“^d{m,n}$”  
    只能输入零和非零开头的数字:“^(0|[1-9][0-9]*)$”  
    只能输入有两位小数的正实数:“^[0-9]+(.[0-9]{2})?$”  
    只能输入有1-3位小数的正实数:“^[0-9]+(.[0-9]{1,3})?$”  
    只能输入非零的正整数:“^+?[1-9][0-9]*$”  
    只能输入非零的负整数:“^-[1-9][0-9]*$”  
    只能输入长度为3的字符:“^.{3}$”  
    只能输入由26个英文字母组成的字符串:“^[A-Za-z]+$”  
    只能输入由26个大写英文字母组成的字符串:“^[A-Z]+$”  
    只能输入由26个小写英文字母组成的字符串:“^[a-z]+$”  
    只能输入由数字和26个英文字母组成的字符串:“^[A-Za-z0-9]+$”  
    只能输入由数字、26个英文字母或者下划线组成的字符串:“^w+$”  
    验证用户密码:“^[a-zA-Z]w{5,17}$”正确格式为:以字母开头,长度在6-18之间,  
    只能包含字符、数字和下划线。  
    验证是否含有^%&'',;=?$"等字符:“[^%&'',;=?$x22]+”  
    只能输入汉字:“^[u4e00-u9fa5],{0,}$”  
    验证Email地址:“^w+[-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$”  
    验证InternetURL“^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$”  
    验证电话号码:“^((d{3,4})|d{3,4}-)?d{7,8}$”  
    正确格式为:“XXXX-XXXXXXX”“XXXX-XXXXXXXX”“XXX-XXXXXXX”  
    “XXX-XXXXXXXX”“XXXXXXX”“XXXXXXXX”  
    验证身份证号(15位或18位数字):“^d{15}|d{}18$”  
    验证一年的12个月:“^(0?[1-9]|1[0-2])$”正确格式为:“01”-“09”“1”“12”  
    验证一个月的31天:“^((0?[1-9])|((1|2)[0-9])|30|31)$”  
    正确格式为:“01”“09”“1”“31”  
    匹配中文字符的正则表达式: [u4e00-u9fa5]  
    匹配双字节字符(包括汉字在内)[^x00-xff]  
    匹配空行的正则表达式:n[s| ]*r  
    匹配HTML标记的正则表达式:/.*|/  
    匹配首尾空格的正则表达式:(^s*)|(s*$)  
    匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*  
    匹配网址URL的正则表达式:http://([w-]+.)+[w-]+(/[w- ./?%&=]*)?  

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
HTML,CSS和JavaScript:示例和实际应用HTML,CSS和JavaScript:示例和实际应用May 09, 2025 am 12:01 AM

HTML、CSS和JavaScript在网页开发中的作用分别是:1.HTML用于构建网页结构;2.CSS用于美化网页外观;3.JavaScript用于实现动态交互。通过标签、样式和脚本,这三者共同构筑了现代网页的核心功能。

如何在标签上设置lang属性?为什么这很重要?如何在标签上设置lang属性?为什么这很重要?May 08, 2025 am 12:03 AM

设置标签的lang属性是优化网页可访问性和SEO的关键步骤。1)在标签中设置lang属性,如。2)在多语言内容中,为不同语言部分设置lang属性,如。3)使用符合ISO639-1标准的语言代码,如"en"、"fr"、"zh"等。正确设置lang属性可以提高网页的可访问性和搜索引擎排名。

HTML属性的目的是什么?HTML属性的目的是什么?May 07, 2025 am 12:01 AM

htmlattributeseresene forenhancingwebelements'functionalityandAppearance.TheyAdDinformationTodeFineBehavior,外观和互动,使网站互动,响应式,visalalyAppealing.AttributesLikutesLikeSlikEslikesrc,href,href,href,类,类型,类型,和dissabledtransfransformformformformformformformformformformformformformformforment

您如何在HTML中创建列表?您如何在HTML中创建列表?May 06, 2025 am 12:01 AM

toCreateAlistinHtml,useforforunordedlistsandfororderedlists:1)forunorderedlists,wrapitemsinanduseforeachItem,RenderingeringAsabulleTedList.2)fororderedlists,useandfornumberedlists,useandfornumberedlists,casundfornumberedlists,customeizableWithTheTtheTthetTheTeTeptTributeFordTributeForderForderForderFerentNumberingSnumberingStyls。

HTML行动:网站结构的示例HTML行动:网站结构的示例May 05, 2025 am 12:03 AM

HTML用于构建结构清晰的网站。1)使用标签如、、定义网站结构。2)示例展示了博客和电商网站的结构。3)避免常见错误如标签嵌套不正确。4)优化性能通过减少HTTP请求和使用语义化标签。

您如何将图像插入HTML页面?您如何将图像插入HTML页面?May 04, 2025 am 12:02 AM

toinsertanimageIntoanhtmlpage,usethetagwithsrcandaltattributes.1)usealttextforAcccessibilityandseo.2)instementRcsetForresponSiveImages.3)applylazyloadingWithLoadingWithLoading =“ lazy” tooptimizeperformance.4)tooptimizeperformance.4)

HTML的目的:启用Web浏览器可以显示内容HTML的目的:启用Web浏览器可以显示内容May 03, 2025 am 12:03 AM

HTML的核心目的在于让浏览器理解并展示网页内容。1.HTML通过标签定义网页结构和内容,如、到、等。2.HTML5增强了多媒体支持,引入了和标签。3.HTML提供了表单元素,支持用户交互。4.优化HTML代码可提升网页性能,如减少HTTP请求和压缩HTML。

为什么HTML标签对Web开发很重要?为什么HTML标签对Web开发很重要?May 02, 2025 am 12:03 AM

htmltagsareessentialforwebdevelopmentastheyandendenhancewebpages.1)heSdefinElayout,语义和互动性。2)SemantictagsiCtagSimproveCacsibilitieAndseo.3)pose poseriblesibilityAndseoandseo.3)poser

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具