A partir de jQuery 1.5, métodos AJAX todo de jQuery devuelven un jqXHRobjeto que proporciona .error(), .success()y .complete()métodos.
¿Cuál es la diferencia entre .success()y .complete()?
A partir de jQuery 1.5, métodos AJAX todo de jQuery devuelven un jqXHRobjeto que proporciona .error(), .success()y .complete()métodos.
¿Cuál es la diferencia entre .success()y .complete()?
Respuestas:
.success()solo se llama si su servidor web responde con un 200 OKencabezado HTTP, básicamente cuando todo está bien.
Sin embargo, .complete()será siempre ser llamado, no importa si la llamada Ajax fue exitosa o no - tal vez emite errores y devuelve un error - integro () todavía ser llamado.
Vale la pena mencionar que .complete()lo recibirán después de que lo .success() llamen, si es que le importa.
success()se llama cuando el servidor devuelve el código de estado 200 , complete()se llama después success(). y veo alguna diferencia:
En success()usted no puede conseguir cadena de respuesta XML que se obtiene con $.ajax()y conjunto dataType:xml
embargo, en complete()que puede obtener el formato de cadena de documento XML utilizando readed
$.ajax({
url:'??',
dataType:'xml',
oncomplete: function(data,status){
console.log(data.responseText);
}
})
success()se llama cuando el servidor devuelve success status code, como: 200, 201etc.
complete()se llama siempre cuando la solicitud está completa. (no importa, es una respuesta de éxito / error del servidor).
successrespuesta del servidor: complete()y success()se llama.errorrespuesta del servidor: complete()y error()se llama.Con qué propósito puede usar complete(): suponga que en beforeSend()usted muestra a loader image, y en complete(), puede ocultar eso loader image.