问题描述
<html><head><title>验证表单</title><metahttp-equiv="content-type"content="text/html;charset=gb2312"/></head><bodybgcolor="#ffffff"text="#000000"onLoad="init(document,Verify_form.UserName)"><scriptlanguage="javascript">//提交表单的函数functionreg(){window.open("register.htm","newwindow","toolbar=yes,menubar=yes");}functioninit(element)//初始化,将光标定位到指定的表单;{element.focus();}//提交前对所提交的数据进行检查,只有所有检查都通过,才将数据进行提交;functionCheck(){flag=fause;if(CheckUserName()==false){return!flag;}if(CheckPassword()==false){return!flag;}if(CheckEmail()==false){return!flag;}//reg();return!flag;}//检查用户名是否为空;functionCheckUserName(){if(document.Verify_form.UserName.value.length=0){error(document.Verify_form.UserName,"对不起,用户名必须输入!");returnfalse;}elsereturntrue;}//检查email地址是否输入正确;functionCheckEmail(){if(document.Verify_form.E_mail.value.indexOf('@',1)==-1){error(document..Verify_form.E_mail,"电子邮件地址错误!");returnfalse;}elsereturntrue;}//检查密码输入是否正确functionCheckPassword(){if(document.Verify_form.Password.value.length<2){error(document.Verify_form.Password,"对不起,密码至少为2个字符!");returnfalse;}else{if(document.Verify_form.Password.value!=document.Verify_form.Againpass.value){error(document.Verify_form.Password,"两次输入的密码不一致,请重新输入!");returnfalse;}elsereturntrue;}}//显示错误信息的函数functionerror(element,test){window.alert(test);lement.select();element.focus();flag=true;}</script><formname="Verify_form"method="post"action="register.asp"onSubmit="returnCheck()"><tablewidth="75%"border="0"align="center"><tr><tdcolspan="2"><divalign="center"><b><fontsize="4"color="#ff0000">请输入用户信息</font></b></div></td></tr><tr><tdwidth="35%"><divalign="right">输入用户名:</div></td><tdwidth="65%"><inputtype="text"name="UserName"></td></tr></td></tr><tr><tdwidth="35%"><divalign="right">输入密码:</div></td><tdwidth="65%"><inputtype="password"name="Password"></td></tr><tr><tdwidth="35%"><divalign="right">再输入一次密码:</div></td><tdwidth="65%"><inputtype="password"name="Againpass"></td></tr><tr><tdwidth="35%"><divalign="right">E_mail:</div></td><tdwidth="65%"><inputtype="text"name="E_mail"></td></tr><tr><tdwidth="35%"><divalign="right"><inputtype="submit"name="Submit"value="提交"></div></td><tdwidth="65%"><inputtype="reset"name="Reset"value="重写"></td></tr></table></form></body></html>
解决方案
解决方案二:
<html><head><title>验证表单</title><metahttp-equiv="content-type"content="text/html;charset=utf8/></head><bodybgcolor="#ffffff"text="#000000"onLoad="init(document,Verify_form.UserName)"><scriptlanguage="javascript">//提交表单的函数functionreg(){window.open("register.htm","newwindow","toolbar=yes,menubar=yes");}functioninit(doc,element)//初始化,将光标定位到指定的表单;{element.focus();}//提交前对所提交的数据进行检查,只有所有检查都通过,才将数据进行提交;functionCheck(){flag=false;if(!CheckUserName()){returnflag;}if(!CheckPassword()){returnflag;}if(!CheckEmail()){returnflag;}//reg();return!flag;}//检查用户名是否为空;functionCheckUserName(){if(document.Verify_form.UserName.value.length==0){error(document.Verify_form.UserName,"对不起,用户名必须输入!");returnfalse;}elsereturntrue;}//检查email地址是否输入正确;functionCheckEmail(){if(document.Verify_form.E_mail.value.indexOf('@')==-1){error(document.Verify_form.E_mail,"电子邮件地址错误!");returnfalse;}elsereturntrue;}//检查密码输入是否正确functionCheckPassword(){if(document.Verify_form.Password.value.length<2){error(document.Verify_form.Password,"对不起,密码至少为2个字符!");returnfalse;}else{if(document.Verify_form.Password.value!=document.Verify_form.Againpass.value){error(document.Verify_form.Password,"两次输入的密码不一致,请重新输入!");returnfalse;}elsereturntrue;}}//显示错误信息的函数functionerror(element,test){window.alert(test);element.select();element.focus();}</script><formname="Verify_form"method="post"action="register.asp"onSubmit="returnCheck()"><tablewidth="75%"border="0"align="center"><tr><tdcolspan="2"><divalign="center"><b><fontsize="4"color="#ff0000">请输入用户信息</font></b></div></td></tr><tr><tdwidth="35%"><divalign="right">输入用户名:</div></td><tdwidth="65%"><inputtype="text"name="UserName"></td></tr></td></tr><tr><tdwidth="35%"><divalign="right">输入密码:</div></td><tdwidth="65%"><inputtype="password"name="Password"></td></tr><tr><tdwidth="35%"><divalign="right">再输入一次密码:</div></td><tdwidth="65%"><inputtype="password"name="Againpass"></td></tr><tr><tdwidth="35%"><divalign="right">E_mail:</div></td><tdwidth="65%"><inputtype="text"name="E_mail"></td></tr><tr><tdwidth="35%"><divalign="right"><inputtype="submit"name="Submit"value="提交"></div></td><tdwidth="65%"><inputtype="reset"name="Reset"value="重写"></td></tr></table></form></body></html>
我替楼主改完之后我对code有了另外一种认识~~~
解决方案三:
楼上正解!楼主刚开始学开发的吧,逻辑上还行,思路挺清晰的!但这个验证实现还可以有更简化的办法的!我也看了你的代码,编码要规范。其次语法上错误不少!你可以先检查带红线的部分,那是语法编译都通过不了的。至少你跑程序的时候这样的问题是不应该有的。