Mostrar contenido del resultado JSON y ‘indefinido’ en una cuadrícula

Entonces, estoy usando JQuery para leer un JSON y ponerlo dentro de una cuadrícula. El problema es: la cuadrícula no se mostrará cuando el JSON es:

{"result":[[{"type":"VOMesas.TMesas","id":1,"fields":{ "FUsers":1,"FEnclosing":0,"FClientName":"","FCode":100,"FStatus":1,"FTotalValue":128.25}}]]} 

Pero si JSON es así, sin el campo: {…}:

 {"result":[[{"type":"VOMesas.TMesas","id":1,"FUsers":1,"FEnclosing":0,"FClientName":"","FCode":100,"FStatus":1,"FTotalValue":128.25}]]} 

Se lee.

Aquí está la función que estoy usando:

 function getContent(order) { $.getJSON("query.json", function(data) { $.each(data.result, function(i, item) { var grid = ''; var i=0; var CAMPO; for (i=0; i < item.length; i++){ CAMPO = item[i]; grid += ''; } grid += '
'+ CAMPO.FQtdPessoas + ''+ CAMPO.FDataFechamento + ''+ CAMPO.FTempoPermanencia + ''+ CAMPO.FNomeCliente + ''+ CAMPO.FValorAcrescimo + ''+ CAMPO.FValorDesconto + ''+ CAMPO.FValorServico + ''+ CAMPO.FDataAbertura + ''+ CAMPO.FNumero + ''+ CAMPO.FStatus + ''+ CAMPO.FValorTotal + ''+ CAMPO.FTerminalAberto + ''+ CAMPO.FNumeroVenda + ''+ CAMPO.FGarcon + '
'; $("#dvContent").html(grid); $("#dvContent").find("a").click(function(e){ var link = $(this); getContent(link.html()); }); }); }); } $(document).ready(function(){ $(function() { getContent(); }); });

Parece que el problema está en el código que estás omitiendo:

grid += '

'+ ........ +'

';

Si el resultado de json está en el primer formato, entonces debería poder acceder al objeto de fields usando CAMPO.fields .

Editar:

Ejemplo:

 grid += ''+ CAMPO.fields.FQtdPessoas +''+ CAMPO.fields.FDataFechamento +''+ [...] 

Para usar propiedades bajo el uso de campo :

 item.result[0][0].fields.<> 

Para el ID y el Tipo hacer:

 item.result[0][0].id item.result[0][0].type 

Editar:

 for (i = 0; i < item.result.length; i++) { CAMPO = item.result[i][i].fields; grid += ''+ CAMPO.FQtdPessoas + ''+ CAMPO.FDataFechamento +''; } 

En su código, CAMPO refiere al objeto que se ve así:

 { "type": "VOMesas.TMesas", "id": 1, "fields": { "FUsers": 1, "FEnclosing": 0, "FClientName": "", "FCode": 100, "FStatus": 1, "FTotalValue": 128.25 } } 

Para acceder a sus campos, use la propiedad de fields (o configure CAMPO en el item[i].fields ).