Hola, segui el ejemplo del link pero no logro recibir objetos json. Si realizo lo mismo con jquery post y envio texto plano no tengo problemas.
Como puedo debuggear para saber porque no recibe la respuesta y sale por la funcion error?
La funcion js realiza lo siguiente (si alguien llega a encontrar un error, bienvenido):
function cargaDatosEquipo(par_id_equipo) {
var posicion;
var partidos_jugados;
var total_partidos;
var clasificacion;
var partidos_jugados_equipo;
var partidos_totales_equipo;
if (par_id_equipo > 0) {
$('#datos_equipo').html('<div class=\"article\"><p>Cargando...</p></div>');
$("#datos_equipo").show();
$.ajax({
url: "
http://www.misitio.com/"+par_id_equipo,
dataType: 'jsonp',
jsonp: 'jsoncallback',
timeout: 5000,
success: function(data, status) {
var str_datos;
$.each(data, function(i,item){
posicion = item.posicion;
clasificacion = item.clasificacion;
partidos_jugados_equipo = item.partidos_jugados_equipo;
partidos_totales_equipo = item.partidos_totales_equipo;
partidos_jugados = item.partidos_jugados;
total_partidos = item.total_partidos;
str_datos = "<p>Ubicación: "+posicion+".</p>"+
"<p>Clasificación: "+clasificacion+"</p>"+
"<p>Partidos jugados: "+partidos_jugados_equipo+" de "+partidos_totales_equipo+".</p>"+
"<p>Partidos jugados D: "+partidos_jugados+" de "+total_partidos+".</p>";
$('#datos_equipo').html('<div class=\"article\">'+str_datos+'</div>');
});
},
error: function(){
// siempre muestra esto
$('#datos_equipo').html('<div class=\"article\"><p>Los datos no se cargaron, intente nuevamente.</p></div>');
}
});
} else {
$("#datos_equipo").hide();
}
}
La url esta correcta, invocada desde afuera devuelve datos solo que indica no tiene el get pedido (Undefined index: jsoncallback) y no lo imprime:
Ejemplo:
<meta http-equiv="Content-Type" content="application/json; charset=utf-8">
({"posicion":"17","clasificacion":"D 2014.","partidos_jugados_equipo":"26","total_partidos_equipo":"26","partidos_jugados":"364","total_partidos":"364"});</body></html>
Gracias por su tiempo. Saludos.