关注焦点和标签的电子邮件验证

时间:2014-03-27 17:14:24

标签: jquery regex

请帮助我了解如何实现它。

我有一个输入字段。

<input name="email" id="email_id" />

我必须在焦点上使用电子邮件验证并使用Tab键。如果电子邮件的格式不正确,那么如果通过tab键丢失焦点,则焦点不会从输入字段丢失。

1 个答案:

答案 0 :(得分:1)

请尝试一下。我认为它可以解决你的问题。

var validate_email = function(email){
  var pattern = /^([a-zA-A0-9_.-])+@([a-zA-Z0-9_.-])+([a-zA-Z])+/;
  var is_email_valid = false;
  if(email.match(pattern) != null){
    is_email_valid = true;
  }
  return is_email_valid;
}

$(document).on("keyup", "#email_id", function(event){
  var keypressed = event.which;
  var input_val = $(this).val();
  var is_success = true;
  if(keypressed == 9){
    is_success = validate_email(input_val);   
    if(!is_success){
      $(this).focus();
    }
  }
});

$(document).on("focusout", "#email_id", function(){
  var input_val = $(this).val();
  var is_success = validate_email(input_val); 

  if(!is_success){
    $("#email_id").focus();
  }
});