Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    34

    utilizzo di ajax e controlli sui campi di un form

    Mi rivolgo nuovamente alla vostra esperienza e alla vostra gentilezza.
    A questo indirizzo http://ginecologasilviablefari.alter...eajaxtris.html sto cercando di realizzare un form che inserisce in mysql dei dati inseriti dall'utente. Il tutto funziona ma ho dei problemi se cerco di far funzionare dei controlli javascript sulla significativitą dei campi.
    Il form l'ho definito in questo modo:

    <form id="messaggio" action="#" >
    <label for="lnome">Nome</label> <br/>
    <input name="nome" type="text" id="nome" /> <br/>
    <label for="lcognome">Cognome</label> <br/>
    <input name="cognome" type="text" id="cognome" /> <br/>
    <label for="lmail">Email</label> <br/>
    <input name="email" type="text" id="email" /> <br/>
    <label for="ltelefono">Telefono(opzionale)</label> <br/>
    <input name="telefono" type="text" id="telefono" /> <br/>
    <label for="ldomanda">Messaggio</label> <br/>
    <textarea name="domanda" rows="7" cols="50" maxlength="2000">inserire il testo
    </textarea>
    <br/>
    <br/>
    <input id="bottone" type="button"
    value = "invia"
    onclick = "testadominio()" />
    </form>

    per la gestione ajax ho scritto questo codice:
    $(document).ready(function() {
    $("#bottone").click(function() {
    alert("ciao");
    var dati = $("#messaggio").serialize();
    alert(dati);
    $.ajax({
    type: "POST",
    url: "funcomunica.php",
    data: dati,
    dataType: "html",
    success: function(msg)
    {
    $("#conf_inv").html(msg);
    },
    error: function()
    {
    alert("chiamata fallita");
    }
    });

    });
    });


    *** per il controllo della significativitą dei campi ho scritto:

    function testadominio() {

    if ((document.messaggio.nome.value == "") || (document.messaggio.nome.value == "inserisci il tuo nome"))
    {
    alert("occorre inserire il proprio nome");
    }
    else
    if ((document.messaggio.cognome.value == "") || (document.messaggio.cognome.value == "inserisci il tuo cognome"))
    {
    alert("occorre inserire il proprio cognome");
    }
    else
    if ((document.messaggio.email.value == "") || (document.messaggio.email.value == "inserisci email"))
    {
    alert("occorre inserire email");
    }
    else
    if (document.messaggio.domanda.value == "")
    {
    alert("occorre inserire la domanda");
    }
    }

    Il tutto di per sč funzionerebbe ma il problema č che quando clicko sul tasto "invia" si attiva la parte per la gestione ajax e non viene richiamato il codice per il controllo sui campi. C'č un sistema per fare in modo che prima richiami la funzione per il controllo sui campi e poi esegua la componente ajax? Ho provato a inserire il richiamo della funzione di controllo all'interno della componente ajax ma non ha funzionato. Un grazie a tutti!!!

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    34
    forse ho trovato l'errore. La funzione testadominio in veritą viene richiamata ma non esegue il test sui campi perchč nel form ho utilizzato "id" invece di "name"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.