Obiectul Form - 1


Formularele sunt elemente HTML care dau viata unor pagini statice deoarece asigura o interfata prin care vizitatorii pot interactiona, cu ajutorul controalelor (elemente ale formularului).
Obiectul Form este mijlocul prin care se poate interactiona cu acest element HTML in scripturile JavaScript.

1. Metode si proprietati ale obiectului form

Dupa cum ati invatat in lectiile precedente, obiectele JavaScript au proprietati si metode.

Proprietatile obiectului "Form" sunt urmatoarele:


Obiectul "Form" are urmatoarele metode:

2. Trimiterea formularelor spre server

Limbajul JavaScript permite prelucrarea datelor introduse in formular inainte ca acestea sa fie trimise spre procesare la programul (scriptul) de pe server.
Puteti expedia dadele unui formular utilizand una din cele doua modalitati:

Multe din proprietatile obiectului "Form" se ocupa de informatiile suplimentare care sunt trimise la server prin intermediul formularului. Aceste proprietati sunt:
- action - specifica adresa URL a programului catre care vor fi trimise datele din formular
Exemplu: Pentru formularele care folosesc metoda "post" puteti preciza in atributul "action" ca datele sa fie trimise prin e-mail, folosind urmatoarea sintaxa: - Cand expediati formularul, se va deschide un client de e-mail ce contine, printre altele, si perechile de "nume-valoare" ale elementelor (casetelor) cuprinse in formular.

- enctype - specifica o codificare MIME a formularului, valoarea prestabilita este "application/x-www-form-urlencode".
O metoda de verificare a acestei codificari este urmatoarea:
if(f1.enctype == "application/x-www-form-urlencode") {
    alert("Tipul de codificare e normal");
}
Un alt tip de codificare des folosit este "text/plain".
Iata un exemplu:
<form method="post" name="f3" action="mailto:adresa_de_mail" enctype="text/plain">
Va place site-ul? <br>
<input name="alege" type="radio" value="1" checked>Da <br>
<input name="alege" type="radio" value="2">Nu <br>
<input name="alege" type="submit" value="Trimite">
</form>
- Proprietatea "enctype="text/plain"" este folosita pentru a trimite text neformatat. Prin aceasta, mailul va fi mai usor de citit, in cadrul mesajului va apare optiunea aleasa. Fara specificarea acestei proprietati mailul va avea ca atasament un fisier cu optiunea aleasa.

- method - defineste modul in care datele formularului sunt expediate. Se poate folosi valoarea "get" sau "post".
Pentru formularele care folosesc metoda "get", in majoriatea site-urilor este disponibil un program CGI de testare, numit "test-cgi" furnizat impreuna cu serverul (locatia fisierului "test-cgi" poate fi diferita, intrebati administratorul serverului). Folositi urmatoarea sintaxa: Veti primi o pagina care va contine, printre altele, si valorile elementelor din formular.
Pentru incepatori, mai putin cunoscatori, si pentru folosirea cu scripturi PHP, este recomandata metoda "post".
Pentru formularele care folosesc metoda "post", in majoriatea site-urilor este disponibil un program CGI de testare, numit "post-query" furnizat impreuna cu serverul (locatia acestuia poate fi diferita, intrebati administratorul serverului). Daca doriti sa verificati ce date trimite formularul, folositi urmatoarea eticheta: - Cand trimiteti formularul veti primi, printre altele, si perechile de "nume-valoare" corespunzatoare elementelor din formular.
Puteti verifica tipul metodei de trimitere a datelor si cu un script JavaScript, ca in exemplul urmator:
<script type="text/javascript">
<!--
var tip_metoda;
tip_metoda = formular.method;
alert("Tipul metodei pt. acest formular e :" +tip_metoda);
//-->
</script>

Daca doriti sa faceti o verificare a datelor din formular inainte ca acestea sa fi expediate la server, puteti folosi evenimentul "onSubmit". - onSubmit - este folosita pentru a valida formularul inainte de a fi trimis.
Metoda "onSubmit" se introduce in interiorul etichetei <form>, ca in exemplul urmator:
<script type="text/javascript">
<!--
// Verifica daca input OK
function validare() {
    if (inputOK) return true;
    else return false;
}
//-->
</script>
...
<form method="post" name="nume_form" action="script.php" onSubmit="return validare()">
...
- Despre validarea datelor dintr-un formular veti putea invata mai multe in lectia urmatoare.
Obiectul image 2 <<-- Anterior --- Urmator -->> Obiectul form 2

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care meta tag se foloseste pentru scurta descriere a paginii?
<meta content="..."> <meta description="..."> <meta http-equiv="...">
<meta name="description" content="70-160 caractere ce descriu continutul paginii" />
Ce proprietate CSS opreste efectul dat de "float"?
clear text-align position
#some_id {
  clear: both;
}
Clic pe metoda ce creaza un array cu toate elementele din pagina cu un anumit nume de tag.
getElementsByName() getElementById() getElementsByTagName()
var divs = document.getElementsByTagName("div");
var nr_divs = divs.length;
alert(nr_divs);
Indicati functia PHP ce returneaza numarul de elemente dintr-un array.
is_array() count() strlen()
$arr = array(7, 8, "abc", 10);
$nri = count($arr);
echo $nri;        // 4
Indicati adverbul corespunzator adjectivului din paranteza in propozitia: "I live (happy)".
happly happily hapily
I live happily.
- Traiesc fericit (in mod fericit).
Indicati adverbul corespunzator adjectivului din paranteza in propozitia: "Vivo (feliz)".
felizamente felizmente felices
Vivo felizmente.
- Traiesc fericit (cu fericire).
Obiectul form 1 - Tutorial JavaScript