비밀번호가 null인지 또는 비어 있는지 또는 onblur를 사용하지 않는지 확인하는 양식이 있습니다. 제출 버튼을 사용하여 양식을 제출합니다. 그러나 작업하기 전에 제출 버튼을 두 번 클릭해야합니다. 암호 상자에 내용이 채워진 후 첫 번째 클릭에는 작동하지 않습니다. 아래는 코드입니다.OnBlur 유효성 검사에는 순 자바 스크립트에서 두 번 클릭해야 함
Jquery와 관련해서는 순수한 자바 스크립트가 필요합니다.
나는 onkeyup을 시도했지만 시스템 및 서버 (아약스 용)에 부담을 줄 수 있으므로 좋은 해결책은 아닙니다.
<!DOCTYPE html>
<html>
<body>
<script>
var error_user_password = false;
function checkpw(){
var user_password = document.forms["joinform"]["user_password"].value;
if (user_password == null || user_password == "") {
text = "Password : Required";
document.getElementById("errormsg4").innerHTML = text;
error_user_password = false;
} else {
document.getElementById("errormsg4").innerHTML = "";
error_user_password = true;
}
}
function submitall() {
checkpw()
if(error_user_password == false) {
return false;
} else {
return true
}
}
</script>
</body>
<form id="joinform" method="post" name="joinform" action="#hello" onsubmit="return submitall()" >
<h2>Join</h2>
<input type="password" name="user_password" id="user_password" placeholder="Password" onblur="checkpw()" />
<div class ="errormsg" id ="errormsg4"></div><br>
<input type="submit" name="join" id="join" value="Submit" ><br><br>
</form>
</html>
당신은 (submitall에서 checkpw()를 호출 할 수있다)? 따라서 제출하기로 결정하기 직전에 항상 확인됩니다 (흐릿함은 물론). –
다른 validatepassword()를 호출하는 이유는 무엇입니까? 'onblur'과'submit' 폼 모두에 대해 같은 함수를 호출하고 유효성 검사를 true 또는 false로 반환합니다. 또한 입력시 'onblur'보다 'onchange'를 사용하는 것이 좋습니다 (흐림 전 변경이 발생 함). – skobaljic
@skobaljic submitall()에서 호출하는 checkpw()와 같은 여러 함수가 있습니다. 게시 한 코드는 단순성을위한 것입니다. – DragonFire