등록 양식을 작성 중입니다. 사용자가 자신의 이메일을 입력 할 수있는 두 개의 필드가 있습니다 (하나는 이메일, 두 번째 필드는 이메일 다시 입력). 두 필드의 유효성을 검사하여 일치하는지 확인하려고합니다. 내가 한 일은 사용자가 패스워드 필드로 이동할 때 onfocus가 validate 함수를 호출하고 두 필드가 일치하는지 확인하는 것입니다. 오류가 있으면 다른 텍스트 필드에 오류가 표시됩니다. 문제는 코드가 작동하지 않는다는 것입니다! 몇 가지 문제가 있습니다JavaScript를 사용하여 두 가지 텍스트 필드 유효성 검사
<html>
<head>
<script>
var fieldalias="Email address field"
function verify(element1, element2){
var passed=false
if (element1.value==''){
document.f1.emailerror.value='Fill out the first email field';
element1.focus()
}
else if (element2.value==''){
document.f1.emailerror.value='Fill out the second email field';
element2.focus()
}
else if (element1.value!=element2.value){
document.f1.emailerror.value='The two emails are not matching';
element1.select()
}
else
passed=true
return passed
}
</script>
</head>
<body>
<p>Username: <br/>
<input class="tb10" type="text" name="username" />
</p><br/>
<p>Email: <br/>
<input class="tb10" type="text" name="email1" />
</p>
<p>Re-Enter Email: <br/>
<input class="tb10" type="text" name="email2" />
<input id="emerror" type="text" readonly name="emailerror"/>
</p><br/>
<p>Password: <br/>
<input class="tb10" type="password" name="password1" onfocus="verify(this.email1,this.email2)";/>
</p>
</body>
</html>
왜 암호 필드에'onfocus'를 사용합니까? 전자 메일 필드에서'onblur'를 사용하지 않는 이유는 무엇입니까? 이 방법을 사용하면 암호 필드를 클릭하여 활성화 할 코드를 입력 할 필요가 없습니다. –