Prompt nel linguaggio Javascript
Nel linguaggio Javascript l'istruzione prompt consente di visualizzare un messaggio e una casella di input in una finestra pop-up.
La sintassi
La sintassi dell'istruzione prompt è la seguente:
prompt( domanda , rispostadefault );
Il primo parametro è il messaggio da visualizzare sulla pop-up ( es. la domanda ). Il secondo parametro è invece opzionale e assegna una risposta di default nella casella di input.
Un esempio pratico
Faccio un esempio pratico per comprendere meglio le potenzialità dell'istruzione prompt.
Nel seguente codice chiedo all'utente di scrivere il suo nome nella finestra di dialogo:
<script>
prompt("Come ti chiami?","Scrivi qui il tuo nome");
</script>
Sia il messaggio introduttivo che la risposta di default sono stringhe di testo. E' quindi necessario digitarle dentro le virgolette ( es. "Come ti chiami?" ).
Quando il browser elabora il codice precedente visualizza sulla pagina web questa pop-up.
A questo punto l'utente può digitare il suo nome nella casella di testo. Poi confermare su OK.
Quando l'utente scrive il suo nome può ovviamente cancellare la risposta di default che appare nella casella di input.
E per registrare la risposta dell'utente?
Per salvare la risposta dell'utente in una variabile Javascript, assegno il risultato dell'istruzione prompt a un nome di variabile.
<script>
nome=prompt("Come ti chiami?","Scrivi qui il tuo nome");
document.write("Ciao " + nome);
</script>
Quando l'utente clicca sul pulsante OK, la stringa di testo che ha digitato in input viene assegnata alla variabile "nome".
Così facendo posso riutilizzare questa informazione nel resto dello script.
Ad esempio, nella seconda riga l'istruzione Document.Write stampa a video un messaggio composto dalla costante "Ciao " seguita dal contenuto della variabile nome.
Ciao Mario
In questo modo, ottengo un messaggio di benvenuto personalizzato.
E se l'utente preme sul pulsante Annulla?
Se l'utente preme sul pulsante Annulla ( o Cancel ) invece che OK, l'istruzione prompt restituisce un'informazione di tipo NULL.
L'esecuzione dello script continua regolarmente ma alla variabile "nome" non viene assegnato nessun valore alfanumerico, la variabile resta vuota e priva di contenuto.
Si possono usare le variabili per il messaggio nella pop-up?
Il messaggio introduttivo e la risposta di default possono essere indicati anche con le variabili senza utilizzare le virgolette.
<script>
domanda="Come ti chiami?";
risposta="Scrivi qui il tuo nome";
nome=prompt( domanda , risposta );
document.write("Ciao " + nome);
</script>