我正在使用以下javascript正则表达式电子邮件验证功能,但它似乎无法正常工作......
function IsValidEmail(email) {
var filter = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
return filter.test(email);
}
function forgetpassword() {
if (document.getElementById("ctl00_TxtEmailId").value == "") {
return false;// this condition gets exected so no prob with my txtboxID
}
if (document.getElementById("ctl00_TxtEmailId").value != "") {
return IsValidEmail(document.getElementById("ctl00_TxtEmailId").value);
}
return true;
}
我失败的输入是test,test@test and also test@test.com
伙计我的文本框位于facebox模式弹出窗口中....当我尝试使用某些文字alert(document.getElementById("ctl00_TxtEmailId").value
jsadf
时,警报显示为什么?为什么?
答案 0 :(得分:1)
我会将正则表达式改为
/^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/
我会将forgetpassword重写为
function forgetpassword() {
return IsValidEmail(document.getElementById("ctl00_TxtEmailId").value);
}
修改:完成功能
function IsValidEmail(email) {
var filter = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/
return filter.test(email);
}
Chrome / IE8中的 IsValidEmail('janus@aaa.bbb') -> true
答案 1 :(得分:0)
想试试吗?
/ ^ [A-ZA-Z] [\瓦特.-] [A-ZA-Z0-9] @ [A-ZA-Z0-9] [\瓦特.-] [A-ZA-Z0-9]。[A-ZA-Z] [A-ZA-Z。] * [A-ZA-Z] $ /