我使用以下代码进行电子邮件验证。它运行正常但我不想在字段为空时验证它。
var filter = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
var sEmail = $(this).val();
if (!filter.test(sEmail)) {
value = false;
$(this).css('border', '1px solid red');
$(this).attr('error','true');
}else{
$(this).css('border', '');
$(this).removeAttr('error');
}
答案 0 :(得分:1)
见评论:
var sEmail = $.trim($(this).val());
// ^^^^^^^-------------^---- Trim whitespace
if (sEmail && !filter.test(sEmail))
// ^^^^^^^^^^--- only validate if there's something in it