In acest tutorial e prezentat modul prin care se pot verifica /valida pe partea de client (cu JavaScript) valorile adaugate in campuri text in formular, caracterele permise (specificate cu un cod RegExp) si numarul lor.
Aici e un exemplu simplu, cu 3 casute de text. Se preia datele din fiecare camp din formular si se verifica pe rand fiecare.
Similar se apica si la formulare cu mai multe casute de tip text si textarea. Vedeti explicatiile de mai jos si cele din cod.

<i>- Numele si Parola trebuie sa contina doar numere, litere si liniute "-", "_".<br/>
- Numele intre 3 si 18 caractere, Parola intre 7 si 18 caractere.</i>
<form action="" method="post" onsubmit="return checkForm(this);">
 <label for="nume1">Nume:</label> <input type="text" name="nume1" id="nume1" /><br/>
 <label for="pass1">Parola:</label> <input type="password" name="pass1" id="pass1" /><br/>
 <label for="email1">E-mail:</label> <input type="text" name="email1" id="email1" /><br/>
 <input type="submit" name="fsubmit" id="fsubmit" value="Submit" />
</form>
<script type="text/javascript"><!--
// RegExp care sa permite doar litere, numere si liniute "-", "_"
var regx_chr = /^([a-zA-Z0-9_-]+)$/;
var regx_mail = /^([a-zA-Z0-9]+[a-zA-Z0-9._%-]*@([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,4})$/;    // RegExp pt. adresa e-mail

// Functia care e apelata la "onsubmit"
// preia campurile din formular, verifica /valideaza datele adaugate
function checkForm(frm1) {
  var fre = false;             // variabila ce va fi returnata de functie

  // preluare casete formular
  var nume1 = frm1.nume1;
  var pass1 = frm1.pass1;
  var email1 = frm1.email1;

  // verificare valori (Nume, Parola, E-mail), daca sunt incorecte, returneaza alert si selecteaza casuta
  if(nume1.value.length<3 || nume1.value.length>18 || nume1.value.search(regx_chr)==-1) {
    alert('Numele trebuie sa contina intre 3 si 18 caractere \nNumere, Litere, "-" si "_"');
    nume1.select();    // selecteaza casuta pt. Nume
  }
  else if(pass1.value.length<7 || pass1.value.length>18 || pass1.value.search(regx_chr)==-1) {
    alert('Parola trebuie sa contina intre 7 si 18 caractere \nNumere, Litere, "-" si "_"');
    pass1.select();    // selecteaza casuta pt. Parola
  }
  else if(email1.value.search(regx_mail)==-1) {
    alert('Adaugati o adresa de e-mail corecta');
    email1.select();    // selecteaza casuta pt. E-mail
  }
  else fre = true;

  return fre;
}
--></script>
Cand se apasa butonul Submit (sau Enter in casuta) pentru trimitere formular, e activat evenimentul "onsubmit" care prin "return checkForm(this);" apeleaza si returneaza rezultatul functiei "checkForm()".
- "this" reprezinta "acesta", adica formularul.
Functia returneaza valoarea unei variabile (fre) setata initial false.
Parametrul "frm1" retine formularul, transferat cu "this".
Formula "frm1.nume_casuta" preia acea casuta din formular ("nume_casuta" e numele casutei adagata la atributul "name").
Prin adaugarea lui "value" se preia valoarea /datele din ea, iar cu "length" se obtine numarul de caractere.
Daca la verificarea datelor valorile nu corespund cu cele ce trebuie adaugate, afiseaza un mesaj in fereastra alert, iar variabila "fre" returnata ramane false, ceea ce determina netrimiterea formularului.
Daca valorile sunt corecte, ultima instructiune: "else fre = true;" , seteaza variabila true, ceea ce determina trimiterea formularului.

- Codul de mai sus va afisa urmatorul formular:
- Numele si Parola trebuie sa contina doar numere, litere si liniute "-", "_".
- Numele intre 3 si 18 caractere, Parola intre 7 si 18 caractere.



Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Ce tip de <input> creaza un camp de text care trebuie sa contina doar numere?
type="text" type="number" type="date"
<input type="number" name="points" min="5" max="80" />
Ce proprietate CSS permite modificarea transparentei unui element?
font-style opacity color
#id {
  filter:alpha(opacity=40);    /* for IE */
  opacity:0.4;
}
Clic pe functia care formateaza un numar la o anumita lungime de caractere.
toPrecision() exp() toFixed()
var num = 12.84567;
alert( num.toPrecision(3) );       // 12.8
Ce functie aranjeaza aleator elementele dintr-un array?
natsort() shuffle() sort()
$lang =[10=>"PHP", 20=>"JavaScript", "site"=>"coursesweb.net");
shuffle($lang);
var_export($lang);     // array (0=>"coursesweb.net", 1=>"PHP", 2=>"JavaScript")
Indicati Superlativul cuvantului "good" (bun).
better best goodest
She is the best in our class.
- Ea este cea mai buna din clasa noastra.
Care este Superlativul cuvantului "bueno" (bun)?
el mejor más bueno muy bueno
Él es el mejor en nuestra clase.
- El este cel mai bun din clasa noastra.
Verificare si Validare caractere din formular

Last accessed pages

  1. Verificare si Validare caractere din formular (445)
  2. Numere cardinale 31-1000 (1106)
  3. Curs HTML gratuit Tutoriale HTML5 (79750)
  4. Comparative si superlative (1504)
  5. Teste spaniola - Tests y ejercicios de Español - Gramática (11758)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (847)
  2. Curs HTML gratuit Tutoriale HTML5 (616)
  3. Curs PHP MySQL, Tutoriale si Scripturi PHP (560)
  4. Curs si Tutoriale Ajax (556)
  5. Curs si Tutoriale JavaScript (554)