Vai a: [ Contenuti ] [ Categorie ] [ Cerca ]

Il modulo "suggerisci il sito ad un amico"

Il modulo “suggerisci il sito ad un amico”


I conti iniziano a tornare no? Quasi… dobbiamo ancora spiegare due cose: come mai c'è un campo hidden nel form e perchè gli input del modulo non hanno l'attributo name?

Iniziamo dal secondo punto. In un modulo html l'attributo name dato ai textfield è fondamentale per due motivi:

1) Il nome identifica in modo univoco un textfield e ciò può essere utile in molti casi (ad es. per il controllo del form con javascript). La sintassi completa di un campo di testo è simile a : <input type="text" nome="prova" value="valore iniziale facoltativo" size="20" maxlength="50">

2) Identificare con un nome i campi del form fa in modo che i dati inseriti dall'utente negli input vengano stampati nell'email. Mi spiego: supponiamo di avere due campi di testo chiamati rispettivamente nick e nome

1
2
3
4
5
<form name="prova" method="post" action="mailto:prova@prova.it">
<input type="text" nome="nick" value="" size="20" maxlength="50">
<input type="text" nome="nome" value="" size="20" maxlength="50">
<input type="submit" name="bottone" value="Spedisci">
</form>

Con un form di questo tipo, dopo averlo riempito ed inviato, riceverò un modulo così strutturato:

1
2
3
nick=Saibal
nome=Lorenzo
bottone=

Come vedere, accanto al nome di ogni input, compare il valore inserito nel relativo campo; se invece avessi omesso il parametro name nel codice html, anche dopo aver riempito correttamente il modulo, avrei ricevuto una email del tutto bianca.
Come mai, allora, nel form che stiamo costruendo non compare l'attributo "nome" ma vengono stampati comunque i risultati?

Semplice: assegnano un attributo name attraverso l'uso di javascript e lo facciamo solamente sui campi del form che ci interessa visualizzare… guardate qua:

1
document.forms[0].elements[2].name = messaggio_iniziale;

"Letto" in italiano dovrebbe essere: "Il terzo elemento del form (il campo hidden) avrà come nome (e quindi verrà stampato) ciò che è scritto nella variabile messaggio_iniziale; sappiamo poi che la variabile var messaggio_iniziale corrisponde a "Messaggio inviato a " + destinatario + " ";."

Pagina: 1 2 3 4 5

link sponsorizzati

Consiglialo su Facebook

Lascia un Commento

Subscribe without commenting

Torna: [ Inizio ] [ Contenuti ] [ Categorie ] [ Cerca ]

Pagina renderizzata in soli 0,094 secondi dopo aver eseguito ben 0 query. Wordpress... prestazioni da urlo!