javascript - parse - Salida JSON.stringify a div de forma bonita
print json javascript (6)
I JSON.stringify
un objeto json por
result = JSON.stringify(message, my_json, 2)
Se supone que los 2
en el argumento de arriba imprimen bastante el resultado. Hace esto si hago algo como alert(result)
. Sin embargo, quiero enviar esto al usuario añadiéndolo dentro de un div. Cuando hago esto, aparece una sola línea. (No creo que esté funcionando porque las rupturas y los espacios no se interpretan como html?)
{ "data": { "x": "1", "y": "1", "url": "http://url.com" }, "event": "start", "show": 1, "id": 50 }
¿Hay alguna manera de mostrar el resultado de JSON.stringify
en un div de una manera bonita?
Asegúrese de que la salida JSON esté en una etiqueta <pre>
.
Considere los retornos de su API REST:
{"Intent":{"Command":"search","SubIntent":null}}
Luego puede hacer lo siguiente para imprimirlo en un formato agradable:
<pre id="ciResponseText">Output will de displayed here.</pre>
var ciResponseText = document.getElementById(''ciResponseText'');
var obj = JSON.parse(http.response);
ciResponseText.innerHTML = JSON.stringify(obj, undefined, 2);
Divulgación completa Soy el autor de este paquete, pero otra forma de generar objetos JSON o JavaScript de forma legible, completa con la posibilidad de omitir partes, contraerlas, etc., es nodedump
, https://github.com/ragamufin/nodedump
Si esto es realmente para un usuario, mejor que solo enviar texto, puede usar una biblioteca como esta https://github.com/padolsey/prettyprint.js para mostrarla como una tabla HTML.
Usa una etiqueta <pre>
use estilo white-space: pre
la etiqueta <pre>
también modifica el formato de texto que puede ser indeseable.