我要用javascript做一个邮箱的控制输入,帮忙看一下我的代码,我没能实现那个功能,帮看看是什么问题。

<html>
<head>
<title>注册</title>
</head>
<body ><DIV align="center">
<script language="javascript">
function validerMail(mail)
{
if((mail.indexOf("@")>=0)&&(mail.indexOf(".")>=0))
{
return true;
}
else
{alert("邮箱地址不正确");return false;
}
}
</script>
<p><h2>注册信息</h2></p>
<table border="2"><tr><td>
<form>

mail<input type="text" name="mail" size="20"><br />
<input type="submit" value="发送">
<input type="reset" value="清除">
</td></tr>
</table>
</form>
<body>
</html>

把<form>改成
<form method="post" action="" onsubmit="javascript:return validerMail(this.mail.value);">
另外还有两处错误,
{alert("邮箱地址不正确");return false;
这中间的分号你用的全角分号,应为半角
倒数第二行<body>应为</body>
给你推荐一个更好的验证邮箱的方法
把 if((mail.indexOf("@")>=0)&&(mail.indexOf(".")>=0)) 改成 if(/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/gi.test(mail))
你的那个如果只输入@.也可以,但显然是非法的,这个验证更严格一点.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-16
<form method=post name="myform" action="" onsubmit="return validerMail()">