codice:setTimeout(function(){document.getElementById("myDiv").innerHTML=xmlhttp.responseText;document.form1.reset();},2000);
codice:setTimeout(function(){document.getElementById("myDiv").innerHTML=xmlhttp.responseText;document.form1.reset();},2000);
Cavicchi Andrea
Problemi con javascript, jquery, ajax clicca qui
Grazie! In parte funziona, ma c'è un problema: dopo aver fatto il check di tutti i campi, ci sono due possibilità:
1) Tutto in regola, il messaggio viene spedito, i campi si azzerano come volevo.
2) C'è un errore in uno dei campi, viene restituito il messaggio di errore, I CAMPI SI AZZERANO (in questo caso i campi non devono azzerarsi; devono azzerarsi solo se il messaggio viene inviato con successo).
Non so se forse sono io che non ho seguito bene il tuo suggerimento.
Ho sostituito la tua stringa con quella già presente nel mio script.
Questa era la mia:
codice HTML:setTimeout(function(){document.getElementById("myDiv").innerHTML=xmlhttp.responseText;},2000);
Ma quindi non è un discorso di PHP...? Devo lavorare nella pagina html...?
codice:setTimeout(function(){ document.getElementById("myDiv").innerHTML=xmlhttp.responseText; if(xmlhttp.responseText.indexOf("stato inviato correttamente")!=-1){document.form1.reset()} },2000);
Cavicchi Andrea
Problemi con javascript, jquery, ajax clicca qui
Sì, ecco, ci voleva un altro "if", solo che non riuscivo a scriverlo correttamente!
Adesso funziona e posso usarlo.
Devo però cercare di renderlo più pulito, nel senso che così devo ricordarmi di copiare il messaggio di corretto invio dal php alla funzione js, poichè devono essere uguali. Invece la funzione js dovrebbe andarselo a leggere da sola.
Comunque mi hai aiutato molto e per questo ti ringrazio e posso ritenermi soddisfatto.