EDIT: He obtenido la insignia de "pregunta famosa" con esta pregunta, así que pensé que volvería y me quedaría justo en la parte superior para que las personas que la buscan obtengan una respuesta inmediatamente.jQuery.getJSON y jQuery.parseJSON return [object Object]?
Básicamente, era nuevo en JSON. JSON es un objeto (obviamente), ¡ya que contiene todo tipo de cosas! Así que estaba como "Hola, javascript, solo aparece una alerta con todos estos datos JSON", esperando que me dé los datos JSON como una cadena. Pero javascript no hace eso (¡lo cual es bueno!), Por lo que fue como "Oye, así es como mostramos los objetos, [object Object]".
Lo que podría haber hecho es algo así como alert(obj.DATA[0][1])
y me habría enseñado ese trozo del objeto.
Lo que realmente quería era verificar que estaba haciendo buenos datos JSON, que podría haber consultado con JSON.stringify
.
De todos modos, ¡de vuelta a nuestras preguntas programadas regularmente!
estoy tratando de obtener algunos datos JSON con una llamada AJAX, jQuery, pero no parece que mi JSON.
si hago algo como:
function init2() {
alert("inside init2");
jQuery.ajax({
url: "/Mobile_ReportingChain.cfm",
type: "POST",
async: false,
success: function (data) {
alert(data);
var obj = jQuery.parseJSON(data);
alert(obj);
}
});
}
consigo esto a partir de alerta (datos):
{"COLUMNS":["MFIRST_NAME","MLAST_NAME","MMDDL_NAME","MEMPLY_ID","MAIM_NBR","EMPLY_ID"],
"DATA":[
["FNAME1 ","LNAME1 ","MI1 ","000-14-7189","026-0010","000-62-7276"]
,["FNAME2 ","LNAME2 ","MI2 ","000-01-2302","101-1850","000-14-7189"]
,["FNAME3 ","LNAME3 ","MI3 ","000-91-3619","102-1000","000-01-2302"]
,["FNAME4 ","LNAME4 ","MI4 ","000-25-9687","102-1000","000-91-3619"]
]}
cuales JSONLint dice es JSON válida. alerta (obj) me da este, sin embargo:
[object Object]
añadiendo dataType: "json"
o "text json"
sólo hace que informan al [object Object]
alert(data)
.
Realmente me gustaría que esto se resuelva, ¿alguien sabe por qué está haciendo esto? Soy bastante nuevo en jQuery, mi objetivo es obtener una matriz para cada una de las columnas. El mismo código que estoy usando ha funcionado en una página diferente, parece que es lo que más me molesta.
va a convertir en un objeto y luego llamar de alerta con ese objeto. Luego dice "hey, este es un objeto". Todo está funcionando como debería :) –