当前位置: 首页 / 技术干货 / 正文
好程序员web前端培训分享JavaScript如何实现表单验证

2019-11-26

HTML5 html5培训 好程序员 web前端培训

  好程序员web前端培训分享web开发中JavaScript如何实现表单验证希望对用到的同学能有所帮助!

 

JS 错误

 

DOM 简介

 

JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证。

 

JavaScript 表单验证

 

JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证。

 

JavaScript 验证的这些典型的表单数据有:

 

用户是否已填写表单中的必填项目?

 

用户输入的邮件地址是否合法?

 

用户是否已输入合法的日期?

 

用户是否在数据域 (numeric field) 中输入了文本?

 

必填(或必选)项目

 

下面的函数用来检查用户是否已填写表单中的必填(或必选)项目。假如必填或必选项为空,那么警告框会弹出,并且函数的返回值为 false,否则函数的返回值则为 true(意味着数据没有问题)

 

function validate_required(field,alerttxt)

 

{

 

with (field)

 

{

 

if (value==null||value=="")

 

{alert(alerttxt);return false}

 

else {return true}

 

}

 

}

下面是连同 HTML 表单的代码:

 

<html>

 

<head>

 

<script type="text/javascript">

 

function validate_required(field,alerttxt)

 

{

 

with (field)

 

{

 

if (value==null||value=="")

 

{alert(alerttxt);return false}

 

else {return true}

 

}

 

}

 

function validate_form(thisform)

 

{

 

with (thisform)

 

{

 

if (validate_required(email,"Email must be filled out!")==false)

 

{email.focus();return false}

 

}

 

}

 

</script>

 

</head>

 

<body>

 

<form action="submitpage.htm" onsubmit="return validate_form(this)" method="post">

 

Email: <input type="text" name="email" size="30">

 

<input type="submit" value="Submit">

 

</form>

 

</body>

 

</html>

 

E-mail 验证

 

下面的函数检查输入的数据是否符合电子邮件地址的基本语法。

 

意思就是说,输入的数据必须包含 @ 符号和点号(.)。同时,@ 不可以是邮件地址的首字符,并且 @ 之后需有至少一个点号:

 

function validate_email(field,alerttxt)

 

{

 

with (field)

 

{

 

apos=value.indexOf("@")

 

dotpos=value.lastIndexOf(".")

 

if (apos<1||dotpos-apos<2)

 

{alert(alerttxt);return false}

 

else {return true}

 

}

 

}

 

下面是连同 HTML 表单的完整代码:

 

<html>

 

<head>

 

<script type="text/javascript">

 

function validate_email(field,alerttxt)

 

{

 

with (field)

 

{

 

apos=value.indexOf("@")

 

dotpos=value.lastIndexOf(".")

 

if (apos<1||dotpos-apos<2)

 

{alert(alerttxt);return false}

 

else {return true}

 

}

 

}

 

function validate_form(thisform)

 

{

 

with (thisform)

 

{

 

if (validate_email(email,"Not a valid e-mail address!")==false)

 

{email.focus();return false}

 

}

 

}

 

</script>

 

</head>

 

<body>

 

<form action="submitpage.htm"onsubmit="return validate_form(this);" method="post">

 

Email: <input type="text" name="email" size="30">

 

<input type="submit" value="Submit">

 

</form>

 

</body>

 

</html>

好程序员公众号

  • · 剖析行业发展趋势
  • · 汇聚企业项目源码

好程序员开班动态

More+
  • HTML5大前端 <高端班>

    开班时间:2021-04-12(深圳)

    开班盛况

    开班时间:2021-05-17(北京)

    开班盛况
  • 大数据+人工智能 <高端班>

    开班时间:2021-03-22(杭州)

    开班盛况

    开班时间:2021-04-26(北京)

    开班盛况
  • JavaEE分布式开发 <高端班>

    开班时间:2021-05-10(北京)

    开班盛况

    开班时间:2021-02-22(北京)

    开班盛况
  • Python人工智能+数据分析 <高端班>

    开班时间:2021-07-12(北京)

    预约报名

    开班时间:2020-09-21(上海)

    开班盛况
  • 云计算开发 <高端班>

    开班时间:2021-07-12(北京)

    预约报名

    开班时间:2019-07-22(北京)

    开班盛况
IT培训IT培训
在线咨询
IT培训IT培训
试听
IT培训IT培训
入学教程
IT培训IT培训
立即报名
IT培训

Copyright 2011-2023 北京千锋互联科技有限公司 .All Right 京ICP备12003911号-5 京公网安备 11010802035720号