JSON.stringify输出到div以漂亮的打印方式
我通过JSON.stringify
一个json对象
result = JSON.stringify(message, my_json, 2)
在上面的参数2
应该相当打印结果。 它做到这一点,如果我做一些像alert(result)
。 不过,我想通过将其附加到一个div内输出给用户。 当我这样做时,我只能看到一行。 (我不认为这是工作,因为rest和空间不被解释为HTML?)
{ "data": { "x": "1", "y": "1", "url": "http://url.com" }, "event": "start", "show": 1, "id": 50 }
有没有办法将JSON.stringify
的结果以漂亮的打印方式输出到div?
请使用<pre>
标签
演示: http : //jsfiddle.net/K83cK/
确保JSON输出位于<pre>
标记中。
完全公开我是这个包的作者,但另一种方式输出JSON或JavaScript对象的可读方式完成与跳过部分,折叠等是nodedump
, https://github.com/ragamufin/nodedump
如果这真的是一个用户,而不仅仅是输出文本,你可以使用这样一个库,如https://github.com/padolsey/prettyprint.js输出为HTML表格。;
使用样式white-space: pre
在<pre>
标签之前,也会修改可能不希望的文本格式。
考虑你的REST API返回:
{"Intent":{"Command":"search","SubIntent":null}}
然后,您可以执行以下操作,以便以不错的格式进行打印:
<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);