Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript] Weryfikacja formularza
Forum PHP.pl > Forum > Przedszkole
gorian
Witam
Na stronie potrzebuję funkcje, która sprawdzałaby przed wysłaniem formularz, czy któreś z pól nie jest przypadkiem puste. Napisałem coś takiego w JS:
Skrypt w nagłówku:
  1. <script language="JavaScript">
  2. function sprawdz() {
  3. var wiadomosc = "Nie są uzupełnione następujące pola: ";
  4. if (document.form.login.value=="") {
  5. wiadomosc = wiadomosc + " - Login";
  6. }
  7. if (document.form.haslo.value=="") {
  8. wiadomosc = wiadomosc + " - Hasło";
  9. }
  10. if (document.form.uzytkownik.value=="") {
  11. wiadomosc = wiadomosc + " - Użytkownik";
  12. }
  13. if (document.form.email.value=="") {
  14. wiadomosc = wiadomosc + " - E-mail";
  15. }
  16.  
  17. if (wiadomosc == "Nie są uzupełnione następujące pola: ") {
  18. document.form.submit();
  19. }
  20. else {
  21. alert(wiadomosc);
  22. return false;
  23. }
  24. }
  25. // Koniec -->


Formularz:
  1. <form name="form" method="post" action="index.php">
  2. <input type="text" name="login" size="20"> Login<br />
  3. <input type="text" name="haslo" size="20"> Hasło<br />
  4. <input type="text" name="uzytkownik" size="20"> Użytkownik<br />
  5. <input type="text" name="email" size="20"> email<br />
  6. <input type="button" value="Wyślij" onclick="sprawdz();">
  7. <input type=reset value="Wyczyść"><br>
  8. </form>


Wszystko gra pięknie i ładnie, ale po tym jeśli formularz jest wypełniony poprawnie, to nie są przesyłane dane dalej:/ Widzi ktoś tutaj jakiś błąd? Może znacie jakiś lepszy skrypt do tego?
Spirit86
  1. <script language="JavaScript">
  2.  
  3. function sprawdz() {
  4.  
  5. var wiadomosc = "";
  6. if (document.form.login.value.length<2) {
  7. wiadomosc = wiadomosc + " - Login";
  8. }
  9. if (document.form.haslo.value.length<2) {
  10. wiadomosc = wiadomosc + " - Hasło";
  11. }
  12. if (document.form.uzytkownik.value.length<2) {
  13. wiadomosc = wiadomosc + " - Użytkownik";
  14. }
  15. if (document.form.email.value.length<2) {
  16. wiadomosc = wiadomosc + " - E-mail";
  17. }
  18.  
  19. if (wiadomosc.length<2) {
  20. document.form.submit();
  21. return true;
  22. }
  23. else {
  24.  
  25. alert("Nie są uzupełnione następujące pola: "+wiadomosc);
  26.  
  27. }
  28. }
  29.  
  30. <form name="form" method="post" action="index.php" onSubmit="sprawdz();return false;">
  31. <input type="text" name="login" size="20"> Login<br />
  32. <input type="text" name="haslo" size="20"> Hasło<br />
  33. <input type="text" name="uzytkownik" size="20"> Użytkownik<br />
  34. <input type="text" name="email" size="20"> email<br />
  35. <input type="submit" value="Wyślij" />
  36. <input type=reset value="Wyczyść" /><br>
  37. </form>


onSubmit
17:41: Poprawiony kod.
gorian
No teraz działa, ale problem jest już inny - gdy jest formularz z pustymi polami to i tak go przesyła :/

Sorry, zobaczyłem Twoją poprawkę po tym jak już odpisałem, że nie działa. Ale po poprawce jest wszystko ok. Dzięki wielkie!! smile.gif
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.