¿Estoy capturando este valor JSON correctamente?

¿Cómo analizaría esta cadena JSON?

{"nodes":["content"],"pager":"content"}

Esta es la función que estoy usando para grah el json.

 $.getJSON(dataNodes, {

 }, function (data) {

      for(var i = 0; i < data.length; i++) {
           $('#content').append(?????data.nodes?????);
      }

 });

Estoy usando data.nodes para intentar capturar ese valor de nodos.

preguntado el 03 de mayo de 12 a las 17:05

3 Respuestas

data.nodes es una matriz con un valor ("contenido"), por lo que si está tratando de agregar esa cadena, debe usar:

data.nodes[0]

contestado el 03 de mayo de 12 a las 17:05

Gracias, ha sido un día lento en el trabajo y mi desarrollador cambia la forma en que se estructuró mi cadena json :) - medios inerciales

@inertialmedia Sin problema :) - Paul

Itera sobre lo incorrecto, necesita iterar sobre data.nodes su matriz de contenido y for loop recuerde usar $ .each() es más limpio :)

http://jsfiddle.net/n65D4/

$(function() {
    var data = {
        "nodes": ["content"],
        "pager": "content"
    };
    $.each(data.nodes, function(i, val) {
        $('#foo').append(val);
    });
});​

contestado el 03 de mayo de 12 a las 17:05

No necesita "analizarlo", ya que jQuery se encargará de ello por usted.

Para hacer la adición, debe sacar la cadena del Array.

  for(var i = 0; i < data.length; i++) {
       $('#content').append(data[i].nodes[0]);
  }

Pero prefiero hacerlo así.

var $content = $('#content');
$.each(data, function(i, value) {
    content.append(value.nodes[0]);
});

contestado el 03 de mayo de 12 a las 17:05

Aunque me pregunto si es una matriz de objetos y la pregunta solo muestra un objeto, ya que la pregunta se refiere a "ese valor de nodos". Hace que parezca que hay varios nodos. - acantilados de locura

No puedo agregar comentarios en ningún otro lugar que no sea aquí, por lo que no puedo preguntarle al interrogador al respecto. - acantilados de locura

Teniendo en cuenta que estaba recorriendo los datos y que una matriz puede ser JSON, es un argumento válido y podríamos estar equivocados al suponer que está obteniendo un objeto. - gillesc

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.