Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jquery]sprawdzenie pol formularza
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
trucksweb
zaczynam pisac prosty validator formularza i doszedlem do momentu, w ktorym chce sprawdzic czy wszystkie pola z klasa required sa wypelnione.
oto kod
  1. <?php
  2. $(document).ready(function() {
  3.  $('form').submit(function() {
  4.  
  5.    if($((':input')).attr('class')=='required'){
  6.  
  7.        alert($((':input.required')).attr('name'));
  8.  
  9.    };
  10.    
  11.    
  12.    
  13.    
  14.    
  15.  
  16.  });
  17.  
  18. });
  19. ?>

niestety ten if nie leci przez wszystkie pola tylko jakos inaczej ? a jak to zrobic aby wypisal mi w alercie wszystkie pola z ta klasa?

i drugie pytanie, czy oplaca sie robic taka validacje ?skoro mozna wylaczyc js i juz formularz przejdzie bez problemu, czy zastosowac jeszcze obowiazkowa filtracje w php ?
EarthCitizen
Nie używam jQuery to nie pomogę w tym temacie, ale tam chyba brakuje pętli do wypisania tych pól?
A co do walidacji po stronie serwera to jak najbardziej, nie tylko ze względu możliwości wyłączenia JS w przeglądarce, ale wysłania danych na adres z action przez bota, podstawiony formularz itd ...
nospor
ale jaki to ma zwiazek z ajaxem? przenosze

walidacja po stronie serwera zawsze musi byc . Walidacja js jest tylko miłym dodatkiem - niczym wiecej

if($((':input.required')).attr('class')=='required'){
chyba nie kumasz jak dziala jquery. Wyjasnie ci ten kod powyzej:
znajdujesz wszystkie inputy z klasą required, a potem sprawdzasz czy klasa to required blinksmiley.gif

pozatym i tak źle to robisz. Musisz uzyc each() by przeleciec po wszystkich znalezionych elementach
ziqzaq
Już ci pisałem, ale co tam: each.
Pobierasz pola z klasą "required" (w dodatku chyba błędnie) i później sprawdzasz czy te pola mają klasę "required".
  1. <?php
  2. if($((':input.required')).attr('class')=='required'){
  3. ?>


Edit: Sorry ~nospor, nie zauważyłem :/
nospor
Cytat
Już ci pisałem, ale co tam

@trucksweb zacznij analizowac wskazówki i rozwiązania z innych swoich tematow, bo będe niemily smile.gif

@ziqzaq luzik, dzieki twemu postowi mogę się popastwić na truckiem winksmiley.jpg
kilas88
Nie lepiej skorzystać z gotowej biblioteki jquery.validate.js ?

Zamiast bawić się, marnować czas, wynajdować na nowo koło (które w powyższym przypadku zdaje się przybierać kształt kwadratu tongue.gif) wystarczyłoby dać kod w stylu:

Kod
      $("#formularz").validate({
     errorPlacement: function(error, element) {
         error.appendTo( element.parent("div").append("<div></div>") );
     },
     rules: {
         form_nazwisko: {
             required: true,
             minlength: 2,
             maxlength: 22
         },
         form_temat: {
             minlength: 5,
             maxlength: 255
         },
         form_tresc: {
             required: true,
             minlength: 30,
             maxlength: 12255
         },
         form_mail: {
             email: true
         },
         form_captcha: {
             required: true,
             minlength: 4,
             maxlength: 6,
             remote: "./ajax/captcha.php"
         }
     },
     messages: {
         form_captcha: {
             remote: 'Proszę wprowadzić prawidłowy kod zabezpieczający.'
         }
     }
 });
    }



I tyle w tym temacie!
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.