<script type="text/javascript">
var geid = function(x) {
var element = document.getElementById(x);
return element;
}
function submitForm(){
var password = geid('password').value;
var passwordConfirm = geid('passwordConfirm');
//THIS IS OF HIGH IMPORTANCE THAT THIS CONFIRM PASSWORD MATCHES
//WILL NEED TO VALIDATE IT IN THE PHP AS WELL>
else if (password == ""){
registerMessage.innerHTML = "Please enter your Password.";
return false;
}
else if (passwordConfirm == "") {
registerMessage.innerHTML = "Please confirm your password.";
return false;
}
else if (passwordConfirm != password) {
registerMessage.innerHTML = "Your passwords don't match.";
return false;
}
else {
registerMessage.innerHTML = "Taking you to your profile, please wait a moment...";
document.forms['registerform'].submit();
}
}
<form method="post" action="register.php" id="registerform" onsubmit="return submitForm()">
<label for="password" class="registerLabel">Password</label>
<input type="password" name="password" id="password" class="registerText" /> <br />
<label for="passwordConfirm" class="registerLabel">Confirm Password</label>
<input type="password" name="passwordConfirm" id="passwordConfirm" class="registerText" /> <br />
<div class="submitMessage">
<input type="submit" id="submit" name="submit" value="Register" class="registerButton cleangray" /><br />
<div id="registerMessage"><?php echo $error ?></div>
</div>
<div class="clear"></div>
</form>
답변
else if
으로 시작할 수 없습니다. 당신은 실행하고 단지 표준 메커니즘을 제출하여 양식을 제출에서 유효성 검사 코드 중 하나를 방지하는 것 if
if (password == ""){
registerMessage.innerHTML = "Please enter your Password.";
return false;
}
로 시작해야합니다.
유효성 검사에 접근하는 가장 좋은 방법은 아닙니다. 각 오류마다 돌아가는 대신 일련의 메시지를 작성하여 모두 한 번에보고 할 수 있습니다. 그런 식으로 사용자는 틀린 모든 것을 알고 있습니다. — 현재 메서드는 하나의 메시지 만 설정합니다.
이 구문 분석 오류는 함수가 실행되는 것을 방지하므로'return false'가 호출되지 않습니다. 그러나이 메커니즘이 Javascript와 결합되어 있지 않기 때문에 양식 제출이 계속 진행됩니다. –
@Tomalak Geret'kal : 당신이 그 코멘트를 쓰는 동안 내 대답을 업데이트하고있었습니다 :) – Town
Meh @ iterative answering! –
JavaScript에 오류가 있으므로 else if
을 먼저 사용하고 if
을 정의하지 않아도됩니다. 이 오류로 인해 모든 JavaScript 코드가 실패합니다.
변경
else if (password == ""){
코드의 HTML에 http://jsfiddle.net/Zs3km/
BTW 데모를 작동
if (password == ""){
에 여기의 당신의 실수 있는지 확실하지 않습니다, <script>
태그에 있습니다. <form>
태그를 열기 전에 <script>
태그를 닫아야합니다.
- 1. 양식이 JSP로 제출되는 것을 확인하는 방법은 무엇입니까?
- 2. 제출 버튼을 클릭하여 JSP 페이지를 다른 페이지로 이동하는 방법은 무엇입니까?
- 3. JQuery - 어떤 양식이 제출 되었습니까?
- 4. 버튼을 클릭하여 데이터 필터링
- 5. 제출 해제 버튼을
- 6. 은 제출 버튼을 사용하여
- 7. 이 코드의 잘못된 점은 이미지 버튼을 두 번 클릭하여 실행해야합니까?
- 8. Jquery 버튼을 클릭하여 확인란을 선택하십시오.
- 9. 버튼을 클릭하여 addcart의 양을 추가하십시오.
- 10. 버튼을 클릭하여 양식을 엽니 다.
- 11. silverlight 버튼을 클릭하여 사각형을 만듭니다.
- 12. 페이지에있는 버튼을 클릭하면 FireFox에서 양식이 제출됩니다.
- 13. 제출 버튼을 사용하지 않고 제출 Mechanize
- 14. 제출 버튼을 양식에 포함해야합니까?
- 15. 제출 버튼을 클릭하지 않고 데이터 제출
- 16. 제출 버튼을 클릭했을 때 무시 제출
- 17. 이와 jQuery를 아약스 양식 버튼을 제출 제출하면
- 18. HTML 양식이 GoDaddy gdform.php와 관련된 문제 제출
- 19. facebook 연결 버튼을 사용하여 양식 제출
- 20. 다른 버튼을 누를 때까지 제출 버튼을 비활성화하는 방법은 무엇입니까?
- 21. 버튼을 클릭하여 창을 제거 할 수 있습니까?
- 22. Android의 경우 클릭하여 목록을 펼치고 버튼을 클릭하십시오.
- 23. 제출 버튼의 CSS 이미지 - 이미지를 클릭하여 이미지를 제출해야합니다.
- 24. jquery에서 어떻게 현재 양식을 클릭하여 클릭하여 참조 할 수 있습니다
- 25. 보기 로딩 메시지 제출 - 뒤로 버튼은 양식이 제출 될 때 나는 로딩 메시지와 이미지 사업부를 보여주는거야
- 26. 제출 버튼을 클릭하면 명세서가 인쇄됩니다.
- 27. 제출 버튼을 사용하여 링크 만들기
- 28. 제출 버튼을 활성화하는 FileUpload 핸들
- 29. Wordpress에서 제출 버튼을 어떻게 편집합니까?
- 30. Javascript에서 마우스 오른쪽 버튼을 클릭하여 모든 라디오 버튼을 지우는 방법?
이 질문을하기 위해 양식을 제출해서는 안되는 이유를 설명해야합니다. ** 코드 덤프는 질문이 아닙니다 ** –