Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Star Wars Zero Company è l'erede di XCOM 2
Star Wars Zero Company è l'erede di XCOM 2
Bit Reactor porta nell’universo di Star Wars una struttura tattica che richiama apertamente XCOM 2, ma la arricchisce con legami tra i personaggi, progressione ruolistica, gestione della base e un sistema di combattimento costruito attorno a tre Punti Azione e alle risorse condivise della squadra
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia)
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia)
Abbiamo provato per una settimana intera la Can-Am Origin, la Dual Sport elettrica del gruppo canadese BRP: ecco com'è andata tra città, autostrada e un primo assaggio di sterrato
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Nelle ultime settimane abbiamo provato il mouse Logitech G305, la tastiera G316 X 98 e le cuffie G325. Si tratta del setup entry-level di Logitech che ormai, di "entry-level" ha ben poco. Tastiera e mouse offrono prestazioni di livello competitivo con quasi nessuna rinuncia e un livello di personalizzazione estremamente elevato. Le cuffie, invece, hanno mostrato qualche debolezza, ma propongono un ventaglio di funzionalità completo che consente di abbandonare completamente i cavi
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-09-2007, 12:51   #1
83mirk
Member
 
Iscritto dal: Mar 2007
Messaggi: 75
[java script] Validare form

Salve ragazzi, vorrei esporre il mio quesito.
Sto realizzando il form per un sito e vorrei effettuare la validazione dei campi di tipo text, radio button, menù di opzioni select.
Potreste darmi una mano?

Fino ad ora sn riuscito a validare il campo testo (quello del nome):

//FORM:

<body><table align="center" border="1">
<form method="post" name="modulo">
<tr>
<td colspan="2" align="center"><b>Registrazione al servizio<br>Tutti i campi sono obbligatori</b></td>
</tr>
<tr>
<td><b>Nome</b></td>
<td><input type="text" name="nome"></td>
</tr>
<tr>
<td><b>Sesso</b></td>
<td>
<input type="radio" name="sesso" value="M" checked>M
<input type="radio" name="sesso" value="F">F
</td>
</tr>
<tr>
<td><b>Città</b></td>
<td>
<select name="citta">
<option>- Seleziona la tua città -</option>
<option value="Roma">Roma</option>
<option value="Milano">Milano</option>
<option value="Napoli">Napoli</option>
<option value="Firenze">Firenze</option>
<option value="Bologna">Bologna</option>
<option value="Catania">Catania</option>
</select>
</td>
</tr>
<tr>
<td colspan="2" align="right">
<input type="button" value="Invia" onClick="Modulo()">
</td>
</tr>
</form>
</table>

FUNZIONE

<script language="javascript">
<!--
function Modulo() {
// Variabili associate ai campi del modulo
var nome = document.modulo.nome.value;

//Effettua il controllo sul campo NOME
if ((nome == "") || (nome == "undefined")) {
alert("Il campo Nome è obbligatorio.");
document.modulo.nome.focus();
return false;
}
//INVIA IL MODULO
else {
document.modulo.action = "php_form.php";
document.modulo.submit();
}
}
//-->
</script>

</body>
</html>

Siccome non sono molto pratico e sto trovando delle difficoltà, potreste dirmi come risolvere il problema per i radio button ed il menù di opzioni???

Ringrazio in anticipo chi avrà la pazienza di rispondermi.
__________________
F3JP-AP098E - T5600 1.8 GHz, RAM 2GB, 320GB SATA 7200 rpm, ATI X1700, S-Multi DL, LCD 15,4 WXGA Glare, WLAN, BTH, Webcam 1.3MP, W7 - Non più ormai ...
83mirk è offline   Rispondi citando il messaggio o parte di esso
Old 21-09-2007, 13:17   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da 83mirk Guarda i messaggi
Siccome non sono molto pratico e sto trovando delle difficoltà, potreste dirmi come risolvere il problema per i radio button ed il menù di opzioni???
Innanzitutto è meglio se usi l'evento onsubmit nel tag <form>. Questo evento viene generato quando si sta per inviare il form. Se dall'evento fai ritornare true, allora procede con l'invio, altrimenti se fai ritornare false non fa nulla. Ed è quindi adatto per fare la validazione.

Per quanto riguarda <select> e i radio è anche abbastanza semplice. Un <select> ha anche lui la proprietà 'value' ma anche la proprietà 'options' (un array delle opzioni) e la proprietà 'selectedIndex' (l'indice della option selezionata). Per i radio hai una proprietà 'checked' che dice se è marcata o no.

Per dirla con del codice, nel tuo caso puoi testare:

document.modulo.citta.value
oppure
document.modulo.citta.selectedIndex

e

document.modulo.sesso[0].checked
document.modulo.sesso[1].checked
__________________
Andrea, Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 21-09-2007, 14:30   #3
83mirk
Member
 
Iscritto dal: Mar 2007
Messaggi: 75
Grazie per la celere risposta. Potresti dirmi di preciso dove inserire le stringhe??
__________________
F3JP-AP098E - T5600 1.8 GHz, RAM 2GB, 320GB SATA 7200 rpm, ATI X1700, S-Multi DL, LCD 15,4 WXGA Glare, WLAN, BTH, Webcam 1.3MP, W7 - Non più ormai ...
83mirk è offline   Rispondi citando il messaggio o parte di esso
Old 21-09-2007, 14:48   #4
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da 83mirk Guarda i messaggi
Grazie per la celere risposta. Potresti dirmi di preciso dove inserire le stringhe??
Potresti fare:

<form method="post" name="modulo" action="php_form.php" onsubmit="return valida_form()">

(e nota, metti pure l'action, non è granché impostarlo da javascript)

poi il pulsante di invio diventa:

<input type="submit" value="Invia">

(tu avevi fatto un "normale" button)

e il codice Javascript si potrebbe fare:

Codice:
function valida_form ()
{
    if (document.modulo.nome.value == "")
    {
        alert ("Il campo Nome è obbligatorio.");
        document.modulo.nome.focus ();
    }
    else if (!document.modulo.sesso[0].checked &&
             !document.modulo.sesso[1].checked)
    {
        alert ("Il campo Sesso è obbligatorio.");
        document.modulo.sesso[0].focus ();
    }
    else if (document.modulo.citta.selectedIndex == 0)
    {
        alert ("Il campo Città è obbligatorio.");
        document.modulo.citta.focus ();
    }
    else
        return true;

    return false;
}
__________________
Andrea, Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 21-09-2007, 19:44   #5
83mirk
Member
 
Iscritto dal: Mar 2007
Messaggi: 75
Ottimo, grazie per la pazienza.
Funziona tutto alla perfezione
__________________
F3JP-AP098E - T5600 1.8 GHz, RAM 2GB, 320GB SATA 7200 rpm, ATI X1700, S-Multi DL, LCD 15,4 WXGA Glare, WLAN, BTH, Webcam 1.3MP, W7 - Non più ormai ...
83mirk è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia) Test ride Can-Am Origin: la moto elettrica che f...
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco Logitech G325, G305 e G316 X: il tris per chi no...
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio Recensione POCO F9 pro: potenza da vero top di g...
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI Tra audio e AI: la ricetta di Qualcomm per l'age...
Intergalactic, Naughty Dog conferma che ...
Non solo Pro: è in arrivo anche l...
Apple lavora a un nuovo Vision Pro: potr...
Offerte Prime anticipate, robot aspirapo...
ChromeOS non è (ancora) morto: Google fi...
HONOR Magic 9 Pro Max, il nuovo top di g...
Un mini PC totalmente passivo in oro 24 ...
Nothing Headphone (1) Pro ufficiali: tri...
JBL lancia le nuove soundbar Cinema SB p...
Inizia il Prime Day in anticipo Amazon: ...
Quando l'agente IA fa tutto da solo: ven...
Domotica e obsolescenza programmata: la ...
BOOX Picco disponibile al preorder, un e...
Rubano rimorchi con logo NVIDIA pensando...
Il CEO di MongoDB lascia tutto e passa a...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 08:50.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v