글 작성자: 써니루루


이메일 주소의 형식을 체크하는데는 역시 정규표현식(Regular Expression)으로 체크하는 방법이 제일 좋은 것 같다.

아래 소스도 마찬가지로 정규표현식을 사용하여 이메일 주소를 체크한다.
 

 function checkEmailFormat(email)
 {
  email.value.replace(" ", "");
  email.value = trim(email.value);

  if (email.value == "")
  {
   alert("이메일을 입력해주세요.");
   return false;
  }
  else if(email.value != "")
  {
   reg = new RegExp("^[\\w\\-]+(\\.[\\w\\-_]+)*@[\\w\\-]+(\\.[\\w\\-]+)*(\\.[a-zA-Z]{2,3})$", "gi");
   if (!reg.test(email.value))
   {
    alert("잘못된 이메일형식입니다.");
    return false;
   }
  }

  return true;
 }




 위 스크립트를 사용하려면 폼의 onsubmit 구문에서 한번에 처리할때 실행시키거나,

이메일에 해당하는 필드의 onunfocus이벤트에서 받아서 처리를 해주면 될 것이고, 해당 인자로는 this[각주:1]를 넘겨주면 될 것이다.

대신 .info같은 4자리의 도메인 주소는 체크에서 제외된다. 숫자를 조금 바꿔주면 해결될 것이다.

  1. 여기서는 <input type=text 형태의 이메일 관련 필드 [본문으로]