2015-10-05 81 views
0

在浏览器中,我在电子邮件验证中使用@符号时出现“预期结束”}'“错误。我不知道我的代码里有什么错,我无法验证用户的邮件ID。下面是我的代码和我得到的错误是在我的代码@符号。提前感谢家伙。在Scala Play Framework中使用javascript进行电子邮件验证?

验证脚本:

var emailText = document.getElementById('emailid').value; 
    alert(emailText); 
    var pattern = /^[a-zA-Z0-9\-_]+(\.[a-zA-Z0-9\-_]+)*@[a-z0-9]+(\-[a-z0-9]+)*(\.[a-z0-9]+(\-[a-z0-9]+)*)*\.[a-z]{2,4}$/; 
    if (pattern.test(emailText)) { 
     return true; 
    } else { 
     alert('Bad email address: ' + emailText); 
     return false; 
    } 

回答

0

尝试用\转义字符@

但你的代码工作完全正常,即使没有它:

function testmail(emailText) { 
 
    alert(emailText); 
 
    var pattern = /^[a-zA-Z0-9\-_]+(\.[a-zA-Z0-9\-_]+)*@[a-z0-9]+(\-[a-z0-9]+)*(\.[a-z0-9]+(\-[a-z0-9]+)*)*\.[a-z]{2,4}$/; 
 
    if (pattern.test(emailText)) { 
 
    return true; 
 
    } else { 
 
    alert('Bad email address: ' + emailText); 
 
    return false; 
 
    } 
 
} 
 

 
console.log(testmail("[email protected]")? "good" : "bad"); //bad 
 
console.log(testmail("[email protected]")? "good" : "bad"); //good

1

我得到了解决。因为,我在斯卡拉工作,我必须添加两个@@用于电子邮件验证,而不是一个

var pattern = /^[a-zA-Z0-9\-_]+(\.[a-zA-Z0-9\-_]+)*@@[a-z0-9]+(\-[a-z0-9]+)*(\.[a-z0-9]+(\-[a-z0-9]+)*)*\.[a-z]{2,4}$/;