【发布时间】:2015-04-06 12:12:23
【问题描述】:
我正在尝试评估表单文本/电子邮件字段以查看是否存在某些内容,如果存在,则将其运行通过正则表达式评估。当我在 SendEmail 函数中包含正则表达式代码和其余逻辑时,它运行良好,但是当我尝试将正则表达式部分移到它自己的函数(validateEmailAddress)中时,验证仍然有效,但它似乎不想返回 false 并停止。相反,它继续到 ajax 部分并发送电子邮件,无论它是否通过正则表达式测试。这是相同的代码,所以我不确定为什么一旦将正则表达式移出到它自己的函数中,“return false”就不起作用了。
感谢您的任何想法并感谢您!
function validateEmailAddress(address) {
filter = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/;
if (!filter.test(address)) {
alert(address + ' - Is an invalid email address.');
return false;
}
}
function SendEmail() {
var emailFromVal = document.getElementById("EmailFrom").value;
var emailToVal = document.getElementById("EmailTo").value;
if (emailFromVal != 0) {
validateEmailAddress(emailFromVal);
} else {
alert("Please provide your email address.");
return false;
}
if (emailToVal != 0) {
}
else {
alert("Please provide your friend's email address.");
return false;
}
$.ajax({
method: 'POST',
url: '/_ajax/emailshare/',
dataType: 'json',
data: formCollection,
success: function (data) {
///send that email out
}
});
}
【问题讨论】:
标签: javascript regex validation form-submit