jquery显示格式化json [英] jquery display formatted json

查看:778
本文介绍了jquery显示格式化json的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嗨我有一个问题因为我的json没有显示为格式化的json。

Hi i have a problem becouse my json isn't display as formatted json.

在我的网页中我有< pre> ;< / pre> 标签,它结合了json字符串:

in my web page i have a <pre></pre> tag, it cointains json string:

json示例:

{"status": "OK", "output": {"pools": [{"stats": {"bytes_used": 0, "objects": 0, "kb_used": 0}, "name": "data", "id": 0}, {"stats": {"bytes_used": 0, "objects": 0, "kb_used": 0}, "name": "metadata", "id": 1}, {"stats": {"bytes_used": 0, "objects": 0, "kb_used": 0}, "name": "rbd", "id": 2}], "stats": {"total_used": 63330648, "total_space": 125604864, "total_avail": 62274216}}}

我使用jquery脚本来格式化它:

i use jquery script to format it:

var jsonPretty = JSON.stringify($(this).text(), null, '\t');
$(this).text(jsonPretty);

但其结果不起作用:

"{\"status\": \"OK\", \"output\": {\"pools\": [{\"stats\": {\"bytes_used\": 0, \"objects\": 0, \"kb_used\": 0}, \"name\": \"data\", \"id\": 0}, {\"stats\": {\"bytes_used\": 0, \"objects\": 0, \"kb_used\": 0}, \"name\": \"metadata\", \"id\": 1}, {\"stats\": {\"bytes_used\": 0, \"objects\": 0, \"kb_used\": 0}, \"name\": \"rbd\", \"id\": 2}], \"stats\": {\"total_used\": 63330648, \"total_space\": 125604864, \"total_avail\": 62274216}}}"

如何格式化以显示格式好的json?

how can i format it to display nice formatted json ?

推荐答案

JSON.stringify 对象,但是你传递一个字符串。要使用这种方法,您需要将字符串转换为对象,然后再转换为字符串:

JSON.stringify takes an object, but you are passing it a string. To use this approach, you would need to turn your string into an object then back into a string:

http://jsfiddle.net/yEez8/

var jsonStr = $("pre").text();
var jsonObj = JSON.parse(jsonStr);
var jsonPretty = JSON.stringify(jsonObj, null, '\t');

$("pre").text(jsonPretty);

这篇关于jquery显示格式化json的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆