Cześć, mam skrypt Javascript, który sprawdza poprawność wpisanych danych do formularza. Chcę zrobić tak, że formularz wyśle się, gdy wszystke funkcje sprawdzające pola zwrócą true. Jeżeli choć jedna funkcja zwróci fałsz, formularz ma się nie wysyłac. Mój kod wygląda tak (wrzuce tylko potrzebne rzeczy, bez zbędnych funkcji):
window.onload = Init;
function Init()
{
var login = document.getElementById('login');
login.onblur = function() {
checkLogin(this);
}
var password = document.getElementById('password');
password.onblur = function(){
checkPassword(this);
}
var password2 = document.getElementById('password_potw');
password2.onblur = function(){
checkPassword2(this);
}
var email = document.getElementById('email');
email.onblur = function(){
checkEmail(this);
}
document.forms["rejestracja"].onsubmit = function(){
onSubmit(this);
}
}
i funkcja onSubmit()
function onSubmit(form){
if (!checkLogin(form.login) ||
!checkPassword(form.password) ||
!checkPassword2(form.password_potw) ||
!checkEmail(form.email))
{
return false;
}
else return true;
}
To powinno działać tak, że jeżeli ta funkcja onSubmit() zwróci false, to formularz się nie wyśle, prawda? A u mnie formularz wysyła się mimo to.