2011-11-04 9 views
19

Estoy buscando una manera de formatear (como en espacios en blanco, líneas nuevas donde sea adecuado) un resultado JSON para que pueda mostrar el resultado real pero con un buen formato.Formateador JSON lib

$.ajax({ 
       url: "/Home/Send", 
       type: "POST", 
       data: JSON.stringify(request), 
       dataType: "json", 
       contentType: "application/json; charset=utf-8", 
       success: function (data) { 
        $("#ResponseBody").val(data.ResponseBody); 
       }, 
       error: function (data) { 
        alert(data); 
       } 
      }); 

este es mi código, que funciona bien data.ResponseBody contiene el JSON, pero como era de esperar, no está bien formada.

¿Alguien sabe de un plugin/método jQuery que me permita formatear la respuesta?

Respuesta

39

puede simplemente usar el tercer parámetro de JSON.stringify:

success: function (data) { 
     var obj = JSON.parse(data.ResponseBody); 
     $("#ResponseBody").val(JSON.stringify(obj, null, 4)); 
    }, 

No se olvide de añadir una regla CSS como #ResponseBody {white-space: pre;} pantalla para hacer los saltos de línea.