1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| <script>
"use strict";
$( function(){ // forme abrégée de $(document).ready( function( ){
$( "#maForm" ).on( "submit", function(){
$( 'html, body' ).animate({
"scrollTop" : $( "#ancre" ).offset().top
}, 'slow' );
var
str = $( this ).serialize(),
jqXHR = $.post( "monFichier.php", str );
setTimeout( function(){
// Si l'objet différé existe dans l'état "attendre",
// alors exécute la méthode fail()
if ( jqXHR && jqXHR.state() === "pending" ){
jqXHR.abort();
}
}, 3000 ); // 3s
jqXHR.done( function( data, textStatus, jqXHR ){
// succès de la transaction, on doit traiter le contenu de data
console.log( data, textStatus, jqXHR );
});
jqXHR.fail( function( jqXHR, textStatus, errorThrown ){
// échec de la transaction, gérer la catastrophe
console.log( jqXHR, textStatus, errorThrown );
});
jqXHR.always( function( jqXHR, textStatus ){
// la transaction est terminée
// nettoyage
// exécution d'un code dépendant
console.log( jqXHR, textStatus );
});
return false;
});
});
</script> |
Partager