»  Pagina principala  »  JavaScript »  Validare de Formulare cu Javascript

Validare de Formulare cu Javascript


Pentru ca datele din formularele HTML sa fie trimise catre un fisier PHP este de preferat sa faceti o verificare, sa vedeti daca ele corespund campurilor in care au fost introduse. De exemplu atunci cand un utilizator trimite un comentariu si a lasat goala o casuta sau a scris adresa de email aiurea sa putem opri trimiterea datelor mai departe.

Pentru o astfel de verificare se poate folosi si PHP dar consider ca dureaza mai mult. Javascript face fata cu succes acestei sarcini si codul este si foarte simplu. Va arat in continuare cum poate Javascript sa interactioneze cu tastatura utilizatorului, putand in acest fel sa controleze tipul datelor introduse, fara sa permita introducerea altui tip de caractere. Asta este o actiune care nu poate fi facuta in PHP.

Pentru a afla care tasta a fost apasata si a actiona in functie de acest lucru trebuie sa stim mai intai care sunt comenzile pentru asta:

onkeypresscand se apasa o tasta
onkeyupcand este eliberata o tasta
onkeydowncand se tine apasata o tasta

Pentru a face legatura intre apasarea tastei si un obiect html din pagina se poate folosi atat cod in interiorul obiectului html car si apelare de functii javascript :

exemplu pentru codul de mai jos
<form>
      <input type="text" value="apasa o tasta aici" onkeypress="alert('ai apasat o tasta in interiorul campului')" />
    </form>

       

<script type="text/javascript">
    function alertare ( ) {
    alert("ai apasat o tasta in interiorul documentului html")
    }
    document.onkeypress=alertare()
    </script>

   


  Bineinteles ca exemplele de mai sus nu pot fi utile la nimic in validarea formularelor, dar ajuta la mai buna intelegere a ceea ce va urma. Pentru a face validarea formularelor trebuie sa determinam ce tasta a fost apasata in interiorul obiectului respectiv.

Pentru asta se foloseste keycode care indica codul tastei apasate. Puteti sa vedeti aceste coduri in exemplul de mai jos.     

<script type="text/javascript">
      function aratacod(e){
      var unicode=e.keyCode? e.keyCode : e.charCode
      alert("codul tastei este:" + unicode)
      }
      </script>
      <form>
      <input type="text" size="2" maxlength="1" onkeyup="aratacod(event); this.select()" />
    </form>

EXEMPLU


Aceste informatii sunt suficiente pentru a da acum niste exemple care pot fi folosite in aplicatii reale


Validare comentariu in functie de numarul de caractere       

<script type="text/javascript">

     

function limitarelungime(obj, length){
        var lungime=length
        if (obj.value.length>lungime)
        obj.value=obj.value.substring(0, lungime)
        }

     

</script>

     

introduceti textul aici (lungimea maxima e de 20 de caractere):
        <form>
        <textarea onkeyup="return limitarelungime(this, 20)" style="width: 300px; height: 40px"></textarea>
    </form>

EXEMPLU


Validare numar de telefon

Vom face aceasta validare folosindu-ne de cea de mai sus. Vom limita numarul maxim de caractere la 10 si nu vom permite decat apasarea tastelor de la 0 la 9. Pentru a impune aceasta restrictie ne vom folosi de codurile caracterelor.      

<script type="text/javascript">
      function numere(e){
      var unicode=e.charCode? e.charCode : e.keyCode
      if (unicode!=8){ //daca tasta apasata nu e backspace
      if (unicode<48||unicode>57) //si nu e nici numar
      return false //nu se poate apasa
      }
      }
function limitarelungime(obj, length){
        var lungime=length
        if (obj.value.length>lungime)
        obj.value=obj.value.substring(0, lungime)
      }

</script>

introduceti numarul de telefon (lungimea maxima e de 10 de caractere):
  <form>
  <textarea onkeypress="return numere(event)" onkeyup="return limitarelungime(this, 10)" style="width: 300px; height: 25px"></textarea>
  </form>

     
EXEMPLU



1 2 Inainte »
Pagina Urmatoare: Validare E-mail, Validare butoane radio





Articole asemanatoare
» Tutorial complet JavaScript (prima parte)

Comentarii



   shifty01

foarte bun acest tutorial si foarte buna initiativa cu acest site. sper sa creasca numarul de articole si de vizitatori
16-Mar-2010 - 14:16


   inutza

cum pot expedia un formular printr-un < a href="">trimite</a>
fara sa folosesc butonul submit
18-May-2010 - 21:15


   cristian

pai ar trebui sa adresezi o functie javascript care sa trimita formularul:
            <a href="javascript:trimite()">trimite</a>

functia javascript ar fi care sa faca submit formularului e cam asa:

function trimite ()
{
    document.numeformular.submit() ;
}
    
19-May-2010 - 09:15


   yoo

am cautat si n-am gasit nimic legat de un formular pentru inregistrarea unei firme. pentru a valida formularul am nevoie de reguli de formare pentru CUI, nr. reg. comertului si cont bancar. are cineva idee care sunt regulile respective sau unde le pot gasi? va multumesc.
06-Jun-2011 - 16:39



Voteaza acest articol!
 



Trimite un comentariu!

Nume *
E-mail *
Comentariu *
  Vreau sa fiu anuntat de urmatoarele mesaje la acest articol

Security image

Cristian Bozeanu

Free Mini Games

Cloud tag

tutorial, photoshop, html, css, javascript, flash, php, mysql, grafica 3D, tutorial, coduri, scripturi, generator de coduri, cursuri php