Utilizzo della proprietà form di Javascript per il recupero dei dati da un modulo

Corso jQuery
Creare applicazioni client-side col Framework jQuery

Scritto da Luca Ruggiero nella sezione Javascript

Sappiamo già molto bene come recuperare i dati da un modulo con Javascript: si assegna un nome al form stesso ed un nome per ognuno dei suoi elementi (textbox, selectbox, textarea, ecc...) e si arriva al valore, o comunque ad identificare il singolo oggetto, con la sintassi

document.NOME_MODULO.NOME_ELEMENTO.PROPRIETA'_O_METODO
Ad esempio:
document.modulo.email.value
identifica la casella di testo email in un form che si chiama modulo.

E' possibile anche identificare elementi di un form non assegnando alcun nome e/o ID al modulo ed ai suoi elementi.

Prendiamo come esempio il seguente modulo:
<form>
    <input type="text" value="A">
    <input type="text" value="B">
    <input type="button" value="OK" onClick="Controlla()">
</form>
Lo script che segue è ingrado di reperire i valori delle due caselle di testo impiegate:
function Controlla()
{
    var x = document.forms[0].elements[0].value;
    var y = document.forms[0].elements[1].value;
    alert("Valore elemento 0 = " + x);
    alert("Valore elemento 1 = " + y);
}
La proprietà form accetta tra parentesi quadre un valore numerico intero che identifica la posizione nella pagina del modulo a cui si vuol fare riferimento; essendo quello di esempio l'unico modulo della pagina trovato dall'interprete del browser, form[0] lo identifica; se ci fosse più di un modulo nella pagina, il secondo trovato (leggendo il codice Html dall'alto verso il basso e da sinistra verso destra) verrà identificato come form[1].

La proprietà elements allo stesso modo, partendo da zero (0), identifica i vari elementi del modulo a cui si fa riferimento: quindi elements[0] identifica il primo elemento del modulo e elements[1] ne identifica il secondo.

Questo metodo è valido quanto il tradizionale, ma non tragga d'inganno il lettore: è necessario assegnare un nome almeno agli elementi del modulo, perchè il recupero dei dati lato server, ad esempio per la registrazione su di un database, prevede l'identificazione del campo mediante la proprietà name.

Maggiori informazioni

I più cliccati della sezione Javascript

:: jQuery Validation: validazione di un form con jQuery (107.912)

:: Breve guida a jQuery (98.602)

:: Le espressioni regolari in Javascript (84.989)

:: Gestione delle stringhe in Javascript (74.986)

:: Stampare una pagina col Dhtml (42.850)

:: Inserire in automatico lo slash nel formato data gg/mm/aaaa (41.642)

:: Menu orizzontale dinamico in Dhtml (37.187)

:: Gli Array in Javascript (35.935)

:: Temporizzazioni Javascript (31.623)

:: Istruzion condizionali in Javascript: if e switch (28.943)

IN EVIDENZA
DOWNLOAD