我想确保访问者输入有效的电子邮件地址和密码。如果是,则淡入提交按钮。否则淡出(隐藏)。
如何添加确保@字符和a字符的功能。 emailLen字符串中的字符?
var emailLen = $("#email").val().length
var pwordLen = $("#pword").val().length
if (emailLen > 7 && pwordLen > 5) {
$('#btnSubmit').animate({ opacity: 1.0 }, 200);
}
else {
$('#btnSubmit').animate({ opacity: 0.0 }, 200);
}
由于
答案 0 :(得分:2)
使用正则表达式验证电子邮件地址:
var regex = /^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
var email = $("#email").val();
var pwordLen = $("#pword").val().length;
if (regex.test(email) && pwordLen > 5) {
$('#btnSubmit').animate({ opacity: 1.0 }, 200);
}
else {
$('#btnSubmit').animate({ opacity: 0.0 }, 200);
}
如果 regex.test(email)
是有效的电子邮件ID,则返回true,否则返回false。
答案 1 :(得分:1)
要直接回答您的问题,您可以检查某些字符是否存在:
var email = $("email").val();
var emailLen = email.length;
// important bit:
var hasAt = email.indexOf( "@" ) != -1;
var hasDot = email.indexOf( "." ) != -1;
或者您可以更进一步检查至少一个。是在最后一个@
之后var atPos = email.lastIndexOf( "@" );
var hasAt = atPos != -1;
var hasDot = email.indexOf( ".", atPos ) != -1;
OSSCube给出的答案是检查电子邮件地址的更常用方法,但您应该注意不寻常的电子邮件(例如使用IP地址,引号或转义字符的电子邮件)。我相信这种方法(只需检查[anything]@[anything].[anything]
)永远不会有误报(如果我错了,请在评论中大喊!)