<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script type="text/javascript"> function validate_email(field,text){ with (field){ // with就是类似C++的namespace,简单说就是命名空间,也就是说with的{}里面就不用再写 thisform.xxx 了,直接写 xxx就是意味着是thisform的 //这里的value=field.value apos = value.indexOf("@");//获取“@”出现的位置 dotpos = value.lastIndexOf(".");//获取“.”出现的位置 if (apos<1||dotpos-apos<2){//做一个判断,输入的邮箱必须包含“@”符号和点号“.”同时“@”不可以是邮件地址的首字符,并且“@”之后需有至少一个“.”号: alert(text);//如果条件成立,则弹出该提示框 return false;//这里的返回false,意味着严重失败 }else{ alert("提交成功\n\n点击确定继续")//如果条件不成立,则弹出该提示框 return true;//意味着验证成功 } } } function validate_form(thisform){//因为onsubmit里调用了validate_form(this),这里的this就是指form本身,thisform接收的就是这个form也可以改成form with (thisform){ // with就是类似C++的namespace,简单说就是命名空间,也就是说with的{}里面就不用再写 thisform.xxx 了,直接写 xxx就是意味着是thisform的 //这里的email=thisform.email=form里name=email if(validate_email(email,"请输入正确的邮箱地址")==false){//调用 validate_required 参数是thisform下面的name=email的标签的引用,另外一个参数是个字符串 email.focus();//如果validate_email返回false,就把焦点设定到email上 return false;//这里的返回false,意味着验证失败,表单不会被提交 } } } </script></head> <body><form action="javascript:;" onsubmit="return validate_form(this)" method="post"><!--当提交表单时,先执行validate_form()。参数是该表单自己this-->邮箱:<input type="text" id="email" name="email" size="50"/> <input type="submit" value="提交" id="submit"/></form></body></html>
时间: 2024-10-07 02:16:23