에게있어
난 당신이 제공하는 무엇을 내 프로그램에 오류가 표시되지 않았지만 여전히 사용하는 대신이
var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
의
var reg = /^[_a-z0-9]+(\.[a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/;
수 있지만 그게 도움이 될 것입니다 생각합니다. 나는 나를 위해 제대로 작동하는 총 Javascript 코드를 제공했다.
function validEmail()
{
var reg = /^[_a-z0-9]+(\.[a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/;
var email_address = $("#email").val();
if(reg.test(email_address) == false)
return false;
else
return true;
}
사용이
또는 너무 다른 방법이를 사용할 수 있습니다
HTML
<form>
//Other Codes
<input type="text" name="email" id="email" onchange="validate(this.value)" />
//Other Codes
</form>
그리고 자바 스크립트
<script>
function validate(email)
{
var reg = /^[_a-z0-9]+(\.[a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/;
if(reg.test(email) == false)
{
alert("This is a invalid Email Address!");
document.getElementById('email').value = '';
document.getElementById('email').focus();
return false;
}
else{
return true;
}
}
</script>
,
또는
HTML
<form>
//Other Codes
<input type="text" name="email" id="email" onchange="validate()" />
//Other Codes
</form>
그리고 자바 스크립트
<script>
function validate()
{
var reg = /^[_a-z0-9]+(\.[a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/;
var email = document.getElementById('email').value;
if(reg.test(email) == false)
{
alert("This is a invalid Email Address!");
document.getElementById('email').value = '';
document.getElementById('email').focus();
return false;
}
else{
return true;
}
}
</script>
그리고 마지막 솔루션은 내가 생각 적용 쉽게 조용합니다. 페이지 대신 팝업
에
오류 메시지
HTML
<form>
//Other Codes
<input type="text" name="email" id="email" onchange="validate()" />
<span id="errormessage"></span>
//Other Codes
</form>
그리고 자바 스크립트
<script>
function validate()
{
var reg = /^[_a-z0-9]+(\.[a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/;
var email = document.getElementById('email').value;
if(reg.test(email) == false)
{
document.getElementById('errormessage').innerHTML= 'fill your email';
document.getElementById('email').value = '';
document.getElementById('email').focus();
return false;
}
else{
document.getElementById('errormessage').innerHTML= '';
return true;
}
}
</script>
그냥 메모, 클라이언트 측 폼 유효성 검사 방지하지 않습니다 자바 스크립트를 스팸 및 주입 공격. 이를 위해 서버 측 유효성 검사가 필요합니다. 클라이언트 측 유효성 검사는 사용자 경험에도 좋습니다. –
FYI이 정규식은 유효한 전자 메일 주소, 특히 로컬 부분에'+'가있는 전자 메일 주소를 거부하고 잘못된 전자 메일 주소를 허용합니다. –