Prova così, ci sono due esempi in realtà. Il before send viene eseguito prima della richiesta ajax, ad esempio se vuoi dare all'utente conferma dell'avvio della richiesta lo fai qua, success invece è chiamata solo se la richiesta ajax ha successo, e comunque solo alla "restituzione" della pagina test.
Per inserire la pausa in success ho usato setTimeout
http://wwww.w3schools.com/jsref/met_win_settimeout.asp
Codice PHP:<script type="text/javascript">
$(document).ready(function() {
$("#input_form").submit(function(){
var importo = $("#importo").attr('value');
var menu = $("#menu").attr('value');
var menu2 = $("#menu2").attr('value');
var menu4 = $("#menu4").attr('value');
var menu5 = $("#menu5").attr('value');
var valuta = $("#valuta").attr('value');
$.ajax({
url: 'test.php',
type: "POST",
data: "importo="+importo+"&menu="+menu+"&menu2="+menu2+"&menu4="+menu4+"&menu5="+menu5+"&valuta="+valuta,
beforeSend: function( xhr ) {
$('div#result2').empty().html("Richiesta in corso...")
},
success: function(data) {
$('div#result2').empty().html("Attendere 2 secondi")
setTimeout(function(){
$("div#result2").html(data);
}, 2000);
}
});
return false;
});
});
</script>

Rispondi quotando