![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 11.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
mam taki formularz (wersja skrócona):
tu jest plik WalidacjaDodawaniaKonta.js (wersja skrócona): function $(id) { return document.getElementById(id); } function walidacja() { var login = $("Login").value; var zapytanie = "./../js/WalidacjaDodawaniaKonta.php?Login=" + login; advAJAX.get({ url : zapytanie, onSuccess : function(obj) { if(obj.responseText == 'Login') { alert("Uzytkownik o takim loginie jest juz w bazie danych"); $("Login").style.backgroundColor = 'red'; } if(obj.responseText == 'OK') { $("Form").submit(); } } }); return true; } i plik WalidacjaDodawaniaKonta.php (wersja skrócona):
No i wszystko ładnie działa w IE ale w FF i Operze submituje sie niezaleznie od tego czy taki login juz jest w bazie czy nie.. dodatkowo w operze wyskakuje alert "Uzytkownik o takim loginie jest juz w bazie danych" a formularz tak czy owak sie submituje i konto zostaje dodane... Mógłby mi ktoś pomóc? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 22.06.2006 Ostrzeżenie: (0%) ![]() ![]() |
W funkcji walidacja() w JS masz na końcu return true czyli niezależnie od tego czy pojawi się alert czy nie funkcja zwraca true i formularz zostanie wysłany
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 1 045 Pomógł: 5 Dołączył: 8.11.2004 Skąd: trójmiasto Ostrzeżenie: (0%) ![]() ![]() |
Miałem juz taki problem dwa razy,
zauważ że wykorzystujesz funkcję javascript o nazwie getElementById tak więc musisz elementom formularza nadać id (o wartościach takich samych jak mają name) dlaczego to działa w IE? Bo IE jak nie ma id to bierze name jako id, natomiast FF i Opera tego nie robią |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 28.06.2025 - 10:04 |