E-mail地址合法性检测

以下代码加入HTML的<body>区:

<script language="javascript">
<!-- Begin
function chk(email, formname)
{
invalid = "";

if (!email)
invalid = "请输入您的Email地址。";

else {

if ( (email.indexOf("@") == -1) || (email.indexOf(".") == -1) )
invalid += "/n/nEmail地址不合法。应当包含'@'和'.';例如('.com')。请检查后再递交。";

if (email.indexOf("your email here") > -1)
invalid += "/n/nEmail地址不合法,请检测您的Email地址,在域名内应当包含'@'和'.';例如('.com')。";

if (email.indexOf("//") > -1)
invalid += "/n/nEmail地址不合法,含有非法字符(//)。";

if (email.indexOf("/") > -1)
invalid += "/n/nEmail地址不合法,含有非法字符(/)。";

if (email.indexOf("'") > -1)
invalid += "/n/nEmail地址不合法,含有非法字符(')。";

if (email.indexOf("!") > -1)
invalid += "/n/nEmail地址不合法,含有非法字符(!)。";

if ( (email.indexOf(",") > -1) || (email.indexOf(";") > -1) )
invalid += "/n/n只输入一个Email地址,不要含有分号和逗号。";

if (email.indexOf("?subject") > -1)
invalid += "/n/n不要加入'?subject=...'。";

}
if (invalid == "")
{
return true;
}
else
{
alert("输入的Email可能包含错误:" + invalid);
return false;
}

}
// End -->
</script>


<form method="post" name="myform" action="submit.cgi" onSubmit="return chk(document.myform.email.value)">
<div align="center">
<input type="text" name="email" value="your email here">
<input type="submit" name="Submit" value="Submit">
</div>
</form>

说明:应该引起注意的地方我已经用绿色标记出来了。除了做Email的非空检测外,还应该检测某些非法字符的填写,你可以仿照上面的方法将你所要禁止的字符全部加上。检测斜杠“/”稍微有一点复杂,因为“/”有其特殊的含义-转意符号,它的作用将它后面字符的原来的含义屏蔽起来,所以检测它本身我们使用2个斜杠“//”。此外,我们经常再表单区事先填写“your mail here”等提示性的话,为了防止访问者直接按递交,将“your mail here”作为合法的邮件地址发送,所以禁止递交这些提示也是必须的。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值