我在JavaScript中有以下电子邮件验证正则表达式。它实际上并没有返回任何东西,但我认为它应该(真或假)。
这段代码出了什么问题?
function isEmail(aa){
var testx=/^([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22))*\x40([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d))*$/
return testx.test(aa);
}
<input type="text" name="email" id="email" onChange="isEmail(this.value)">
答案 0 :(得分:1)
答案 1 :(得分:0)
通过正则表达式进行电子邮件验证似乎非常复杂。
如果可能,您应该使用HTML5表单验证
<input type="email">
diveintohtml5.info是了解form validation的更多信息的好地方。
据我所知,验证是浏览器方面的事情,只能与sumbit按钮一起使用。没有javascript api来检查特定字符串是否有效。