Estoy atascado en una situación que no tiene sentido.
Tengo esta función:
Código:
La cual ejecuta en Jquery ajax y devuelve un array.function ajax(datos,url){ if (confirm('¿Desea proceder?')){ var valores= new Array(2); $.ajax({ type:'POST', url:url, data:datos, beforeSend: function(){ console.log("Espere..."); }, dataType: "json", success: function (data) { console.log(data.success); alert(data.success); valores[1]= data.id; }, error: function (XMLHttpRequest, textStatus, errorThrown) { valores[0]=1; alert('ERROR: No se ha podido realizar la acción.'); } }); //Fin ajax return valores; } }
Aquí la función que llama a ajax():
Código:
Lo que ocurre es que cuando quito el alert no me devueve los parámetros, en cambio si ejecuto el alert el array "res" coge correctamente los datos, y no sé por que.function nuevo_trabajador(){ var res = new Array(2); res = ajax($('#insertar').serialize(),'index_ajax.php?controlador=gastos/gastos&accion=insertar_trabajador'); //Si quito alert no me devuelve bien los parámetros alert(res[1]); if (res[0]===0){ [...] } }
¿Podéis echarme una mano por favor?
Muchas gracias.