表单验证用于发生在服务器,客户端已经输入所有必要的数据,然后按下提交按钮之后。如果一些已被输入的客户端的数据的已在错误形式或者被简单地丢失,则服务器将必须的所有数据发送回客户端,并请求的形式以正确的信息重新提交。这是一个漫长的过程,会增加服务器负担。
JavaScript中,提供了一种方法将其发送到web服务器之前验证客户端的计算机上的形式的数据。表单验证通常执行两种方式。
- 基本验证 - 首先,该表必须进行检查,以确保数据输入的需要将其每一个表单字段。这将通过表格的每个字段只需要循环,并检查数据。
- 数据格式验证 - 其次,该被输入的数据必须检查正确格式和值。这将需要放置更多的逻辑来测试数据的正确性。
我们将举一个例子来了解验证的过程。下面是简单的形式进行:
<html> <head> <title>Form Validation</title> <script type="text/javascript"> <!-- // Form validation code will come here. //--> </script> </head> <body> <form action="/cgi-bin/test.cgi" name="myForm" onsubmit="return(validate());"> <table cellspacing="2" cellpadding="2" border="1"> <tr> <td align="right">Name</td> <td><input type="text" name="Name" /></td> </tr> <tr> <td align="right">EMail</td> <td><input type="text" name="EMail" /></td> </tr> <tr> <td align="right">Zip Code</td> <td><input type="text" name="Zip" /></td> </tr> <tr> <td align="right">Country</td> <td> <select name="Country"> <option value="-1" selected>[choose yours]</option> <option value="1">USA</option> <option value="2">UK</option> <option value="3">INDIA</option> </select> </td> </tr> <tr> <td align="right"></td> <td><input type="submit" value="Submit" /></td> </tr> </table> </form> </body> </html>
基本表单验证:
首先,我们将展示如何做一个基本的表单验证。在上面的表格要求validate()函数来验证数据在onsubmit事件发生。以下是validate()函数的实现:
<script type="text/javascript"> <!-- // Form validation code will come here. function validate() { if( document.myForm.Name.value == "" ) { alert( "Please provide your name!" ); document.myForm.Name.focus() ; return false; } if( document.myForm.EMail.value == "" ) { alert( "Please provide your Email!" ); document.myForm.EMail.focus() ; return false; } if( document.myForm.Zip.value == "" || isNaN( document.myForm.Zip.value ) || document.myForm.Zip.value.length != 5 ) { alert( "Please provide a zip in the format #####." ); document.myForm.Zip.focus() ; return false; } if( document.myForm.Country.value == "-1" ) { alert( "Please provide your country!" ); return false; } return( true ); } //--> </script>
数据格式验证:
现在,我们将看到我们如何将其提交到Web服务器之前,验证我们输入的表单数据。
这个例子说明了如何验证输入的电子邮件地址,这意味着电子邮件地址必须至少包含一个@符号和一个点(.)。此外,@绝不能是电子邮件地址的第一个字符,最后点必须在@符号后面的一个字符:
<script type="text/javascript"> <!-- function validateEmail() { var emailID = document.myForm.EMail.value; atpos = emailID.indexOf("@"); dotpos = emailID.lastIndexOf("."); if (atpos < 1 || ( dotpos - atpos < 2 )) { alert("Please enter correct email ID") document.myForm.EMail.focus() ; return false; } return( true ); } //--> </script>
标签:
JavaScript,表单
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
金钱帮资源网 Copyright www.kbjia.com
暂无“详解JavaScript中的表单验证”评论...
更新日志
2024年10月21日
2024年10月21日
- 中国音乐地图之听见内蒙古呼麦短调2020[WAV分轨]
- 望江晴.2024-望【华纳】【FLAC分轨】
- 庞龙.2017-走着唱着【星外星】【WAV+CUE】
- 张秀卿.2000-却上心头【锐音音乐】【WAV+CUE】
- 中国音乐地图之听见新疆塔吉克族民间乐曲集2020[WAV+分轨]
- OrchestraOrfeo-RomanzaMusicforStringsbySibeliusBrittenBarberPrt(2024)[24Bit-96
- TheClevelandOrchestra-ProkofievSymphonyNo.6(2024)[24Bit-96kHz]FLAC
- 刘舸《我的寂寞像一条蛇》[320K/MP3][56.06MB]
- 刘舸《我的寂寞像一条蛇》[FLAC/分轨][125.49MB]
- 邓讴歌《三叉戟 电影配乐专辑》[320K/MP3][73.01MB]
- 尹光.2006-浓情香港半世纪2CD【环星】【FLAC分轨】
- 梁咏琪.2001-透明【EEI】【WAV+CUE】
- 齐秦.1989-金曲纪念辑【快乐唱片】【WAV+CUE】
- 群星-《情惹发烧情》HQCD【低速原抓WAV+CUE】
- 马健涛《你是我唯一的执着》限量1:1母盘直刻[低速原抓WAV+CUE]