Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jQuery] Submit formularza dopiero po 2x kliknięciu
Forum PHP.pl > Forum > XML, AJAX > AJAX
Barn
Witam,

Mam prostą funkcję, która sprawdza czy login już jest w bazie i jeśli tak podświetla jeden z paragrafów na czerwono. W przeciwnym wypadku powinna pozwolić na submit formularza.

  1. $("#form_login").submit(function()
  2. {
  3.  
  4. $.post("logvalid.php", { login:$("#r_login").val() }, function(data) {
  5. if(data == "arr")
  6. fs = 1;
  7. else if(data == "nay") {
  8. $('[name=l_login]').css("color","red");
  9. fs = 0;
  10. }
  11.  
  12. });
  13.  
  14. if(fs == 1)
  15. return true;
  16. else
  17. return false;
  18. });


Jeśli login istnieje, nie ma problemu, faktycznie paragraf świeci się na czerwono. Jednak jeśli login jest nowy i chciałbym go zapisać, muszę po jego wpisaniu najpierw raz przycisnąć przycisk submit, i potem jeszcze raz i dopiero wtedy jest zapisywany. Czy robię coś nie tak ze zmienną fs?
nospor
Ajax wykonuje się asynchronicznie. Twój return wykonuje się zanim ajax się wykona. A skoro tak to zawsze idzie return false, fs nie jest jeszcze ustawione
Albo przestaw ajaxa na synchronicznego
Albo sprawdzaj login zaraz po wpisaniu
Barn
Faktycznie, przeoczyłem to. Zamiast tego rozwiazania zastosowałem blur() po wpisywaniu loginu. Dzięki za wyjaśnienie.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.