求一段完善的E-Mail地址的javascrtipt验证代码

MoneyMoneyLoveMe 2004-11-01 12:09:17
要求如下:

"@"=1

"@"前至少有1个字符,("a-z","A-Z","-","_","0-9",".")
并且信箱地址的首位不能是".","-"

"@"后面至少4个字符,("a-z","A-Z","-","_","0-9",".")
并且@后面第一个字符和最后一个字符不能是".","-","_"

-------------------------------------
如果错误,都提示"E-Mail地址格式不正确"就可以了,无需详细说明错在哪里。在线等。
...全文
192 9 打赏 收藏 举报
写回复
9 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
shuixianzi00 2005-01-28
  • 打赏
  • 举报
回复
1
MoneyMoneyLoveMe 2004-11-01
  • 打赏
  • 举报
回复
请哪位达人给出代码,谢先。

up,在线等。
突击召唤师 2004-11-01
  • 打赏
  • 举报
回复
正则表达式就行了吧
mary0226 2004-11-01
  • 打赏
  • 举报
回复
关注
8080 2004-11-01
  • 打赏
  • 举报
回复
is_email = function (p_obj)
{
var i_email=/^[A-Za-z0-9]+([_\.-][A-Za-z0-9]+)*@[A-Za-z0-9]+([_\.-][A-Za-z0-9]+)*\.([A-Za-z]){2,4}$/i;
return i_email.test(p_obj.value);
}

这个是我试过最好的,别的都认为 admin@www.sina.com.cn 这种是个错误的邮箱
bright801101 2004-11-01
  • 打赏
  • 举报
回复
function isEmail(s,msg){
if (s.value.length==0)return true;
var reg = /^([a-z]){1,}([\.a-z0-9_\-]){1,}([a-z0-9]){1,}@([a-z0-9_-]){3,}(\.([a-z0-9]){2,4}){1,2}$/gi;
if (reg.test(s.value))return true;
else {
alert((msg?msg:'請輸入標准格式E_mail'));
s.focus();
s.select()
return false;
}
}
方法有很多种的这只是一种。
peanuts6 2004-11-01
  • 打赏
  • 举报
回复
相关邮箱那个多加条件判断就可以了。
<script language="javascript">
var submitted = 0;
// A utility function that returns true if a string contains only
// whitespace characters.
function isBlank(s)
{
for (var i = 0; i < s.length; i++)
{
var c = s.charAt(i);
if ( (c != ' ') && (c != '\n') && (c != '\t') )
return false;
}
return true;
}

// A utility function that returns true if a string represents a numeric value
function validNumericField(pElement) {
if ( (!validTextField(pElement)) || (isBlank(pElement)) || (isNaN(pElement)) ) {
return false;
}
return true;
}

// A utility function that returns true if a string contains text
function validTextField(pElement) {
if ( (pElement == null) || (pElement == "null") || (pElement == "") || (isBlank(pElement)) ) {
return false;
}
return true;
}

// A utility function that returns true if a string contains the e-mail "@" sign
function validEmailAddress(pElement) {
if ( pElement.indexOf("@") < 0 ) {
return false;
}
return true;
}

function validFedEx(acctNum)
{
var re = /\D/g
var temp_account = acctNum.replace(re,"");
if(temp_account.length == 9)
{
return true;
}
else
{
return false;
}
}




function formatPhone(phone)
{
var re = /[^-0123456789]/g
phone = phone.replace(re," ");

return phone;
}


function verify() {
var validFlag = true;

document.regform.user_tel1.value = formatPhone(document.regform.user_tel1.value);
document.regform.user_tel2.value = formatPhone(document.regform.user_tel2.value);

if ( !validTextField(document.regform.user_zhanghao.value) ) {
validFlag = false;
alert("请输入你的帐号!");
document.regform.user_zhanghao.focus();
return false;

}else if ( !validTextField(document.regform.user_pwd.value) ) {
validFlag = false;
alert("请输入密码!");
document.regform.user_pwd.focus();
return false;

} else if ( !validTextField(document.regform.user_compwd.value) ) {
validFlag = false;
alert("请输入确认密码!");
document.regform.user_compwd.focus();
return false;

} else if (document.regform.user_pwd.value!=document.regform.user_compwd.value){
validFlag = false;
alert("输入的两次密码不相同!");
document.regform.user_pwd.focus();
return false;

} else if ( !validTextField(document.regform.user_email.value) ) {
validFlag = false;
alert("请输入E_Mail地址!");
document.regform.user_email.focus();
return false;


} else if ( !validEmailAddress(document.regform.user_email.value) ) {
validFlag = false;
alert("请输入有效的E_Mail地址!");
document.regform.user_email.focus();
return false;


} else if ( !validTextField(document.regform.user_name.value) ) {
validFlag = false;
alert("请输入姓名!");
document.regform.user_name.focus();
return false;


} else if ( !validTextField(document.regform.user_sex.value) ) {
validFlag = false;
alert("请选择性别!");
document.regform.user_sex.focus();
return false;


} else if ( !validTextField(document.regform.user_tel1.value) ||
!validNumericField(document.regform.user_tel1.value) ) {
validFlag = false;
alert("区号不能为空或是文本!");
document.regform.user_tel1.focus();
return false;


} else if ( !validTextField(document.regform.user_tel2.value) ||
!validNumericField(document.regform.user_tel2.value) ){
validFlag = false;
alert("电话号码不能为空或是文本!");
document.regform.user_tel2.focus();
return false;


} else if ( !validTextField(document.regform.user_fax1.value) ||
!validNumericField(document.regform.user_fax1.value) ||
!validTextField(document.regform.user_fax2.value) ||
!validNumericField(document.regform.user_fax2.value) ) {
validFlag = false;
alert("传真号码不能为空或是文本!");
document.regform.user_fax1.focus();
return false;

} else if ( !validTextField(document.regform.user_postcode.value) ||
!validNumericField(document.regform.user_postcode.value) ) {
validFlag = false;
alert("邮政编码不能为空或是文本!");
document.regform.user_postcode.focus();
return false;


} else if ( !validTextField(document.regform.user_comname.value) ) {
validFlag = false;
alert("公司名称不能为空!");
document.regform.user_comname.focus();
return false;


} else if ( !validTextField(document.regform.user_addr.value) ) {
validFlag = false;
alert("地址不能为空!");
document.regform.user_addr.focus();
return false;


} else if(submitted == 1){
alert("您的请求正在处理中……,请稍候!");
validFlag = false;
return false;
}


}
</script>
JK_10000 2004-11-01
  • 打赏
  • 举报
回复
有@有点就够了
何必自找麻烦。
ares4u 2004-11-01
  • 打赏
  • 举报
回复
up,
相关推荐
发帖
JavaScript

8.7w+

社区成员

Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
帖子事件
创建了帖子
2004-11-01 12:09
社区公告
暂无公告