我正在尝试创建一个仅向目前在英国大学学习的学生开放的注册表格,因此需要确保他们输入的电子邮件地址以.ac.uk结尾。
我有以下JS功能,但它根本不起作用。
function valUniEmail()
{
var email = document.getElementById('contactFormEmail');
if (email.innerHTML.match(^[\w!#$%&'*+/=?^`{|}~-]+(?:\.[\w!#$%&'*+/=?`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?:\.ac\.uk)$`)
{
document.getElementById('tick').style.display = 'display;'
}
else
{
document.getElementById('cross').style.display = 'none;'
}
}
为什么这可能不起作用?
由于
答案 0 :(得分:2)
您应该使用/.../
引用正则表达式并使用/
转义任何\/
字符,如下所示:
/^[\w!#$%&'*+\/=?^`{|}~-]+(?:\.[\w!#$%&'*+\/=?`{|}~-]+)*@(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\.)+(?:ac\.uk)$/