• User Newbie

    Problema validazione form

    Ciao a tutti, ho un piccolo problema con la validazione di un form, che non riesco a risolvere. In pratica vorrei controllare che un campo sia stato inserito prima del submit del form, ma non riesco a capire perchè se non metto il campo, il form viene inviato lo stesso :mmm:

    vi posto un po' di codice:

    [php]<head>
    <script language="Javascript" type="text/javascript">
    <!--
    function ValidateForm(form)
    {

    if(IsEmpty(form.nome))
    {
    alert('Devi inserire il nome')
    form.nome.focus();
    return false;
    }

    return true;
    }

    function isEmpty(inputStr) {
    if ( null == inputStr || "" == inputStr )
    return true;
    return false;
    }
    //-->
    </script>
    </head>

    <body>
    <form name="form1" method="post" action="elaboraform.php" onsubmit="return ValidateForm(this);">

    <fieldset>
    <legend>Dati Anagrafici</legend>
    <p><label for="nome">Nome </label><input name="nome" type="text" id="nome" class="txt" /></p>
    <p><label for="cognome">Cognome </label><input name="cognome" type="text" id="cognome" class="txt" /></p>
    <p><label for="data">Data Nascita </label><input name="data" type="text" id="data" class="txt" /></p>
    <p><label for="luogo">Luogo Nascita </label><input name="luogo" type="text" id="luogo" class="txt" /></p>
    </fieldset>

    <input type="submit" name="Submit" value="Invia" class="right" />

    </form>[/php]qualche idea?


  • User

    Prova cosi':

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

    <html>
    <head>
    <title>Untitled</title>
    </head>
    <body>
    <script language="Javascript" type="text/javascript">
    <!--
    function ValidateForm()
    {
    var nome = document.form.nome.value;

    if(nome == "")
    {
    alert('Devi inserire il nome')
    document.form.nome.focus();
    return false;
    }
    else {
    document.form.action = "elaboraform.php";
    document.form.submit();
    }
    return true;
    }

    function isEmpty(inputStr) {
    if ( null == inputStr || "" == inputStr )
    return true;
    return false;
    }
    //-->
    </script>

    <body>
    <form name="form" method="post" onsubmit="ValidateForm();">

    <fieldset>
    <legend>Dati Anagrafici</legend>
    <p><label for="nome">Nome </label><input name="nome" type="text" id="nome" class="txt" /></p>
    <p><label for="cognome">Cognome </label><input name="cognome" type="text" id="cognome" class="txt" /></p>
    <p><label for="data">Data Nascita </label><input name="data" type="text" id="data" class="txt" /></p>
    <p><label for="luogo">Luogo Nascita </label><input name="luogo" type="text" id="luogo" class="txt" /></p>
    </fieldset>

    <input type="submit" name="Submit" value="Invia" onclick="ValidateForm(); return false;" class="right" />

    </form>
    </body>
    </html>

    Buona giornata,

    Leonardo