tengo este código solicitar alguna información carpeta de una base de datos MySQL:¿Es posible verificar el tiempo de espera en jQuery.post()?
function gotoDir(pmcat_id, pcat_id){
$('#slideshowContainer').html('<img class="loader" src="/javascript/ajax-loader.gif">');
$.post("/publish/includes/content.includes/functions.slideshow.php",
{ updateSlideshowDir: 1, pmcat_id: pmcat_id, pcat_id: pcat_id },
function(data){
$('#pageSlideshow').html(data.content);
}, "json"
);
}
veces los tiempos de solicitud POST a cabo debido a la mala conexión a Internet. ¿Es posible establecer un control de tiempo de espera en $ .post()? Ejemplo: si $ .post() usa más que X ms, vuelva a cargar la solicitud.
ACTUALIZACIÓN: Parece que he encontrado una solución:
function gotoDir(pmcat_id, pcat_id){
$('#slideshowContainer').html('<img class="loader" src="/javascript/ajax-loader.gif">');
$.ajax({
type:"post",
url:"/publish/includes/content.includes/functions.slideshow.php",
data: { updateSlideshowDir: 1, pmcat_id: pmcat_id, pcat_id: pcat_id },
dataType: "json",
success:function(data) {
if (data == null){
alert('ajax failed. reloading...');
gotoDir(pmcat_id, pcat_id);
} else {
$('#pageSlideshow').html(data.content);
}
}
});
}
Es esta una manera bien hacer esto? : S
No, no está bien, ya que si la var de datos es nula no significa que la solicitud ha excedido el tiempo de espera, lo que causaría solicitudes infinitas si functions.slideshow.php realmente devuelve nulo. – ifaour