2025-04-12 10:00:01

将JSON显示为HTML

关于如何将JSON以人类可读的格式嵌入到HTML页面中,有什么建议吗?例如,当您在浏览器中查看XML时,大多数浏览器都会显示格式化的XML(缩进、适当的换行等)。我希望JSON的最终结果相同。

颜色语法高亮显示将是一个奖金。

谢谢


当前回答

对于语法高亮显示,使用代码修饰。我相信这就是StackOverflow用来突出显示代码的方法。

将格式化的JSON包装在代码块中,并赋予它们“prettyprint”类。 在你的页面中包含pretty .js。 确保文档的主体标记在加载时调用prettyPrint()

您将看到以页面中布局的格式突出显示的JSON语法。请看这里的例子。如果你有一个这样的代码块:

<code class="prettyprint">
    var jsonObj = {
        "height" : 6.2,
        "width" : 7.3,
        "length" : 9.1,
        "color" : {
            "r" : 255,
            "g" : 200,
            "b" : 10
        }
    }
</code>

它看起来是这样的:

var jsonObj = {
    "height" : 6.2,
    "width" : 7.3,
    "length" : 9.1,
    "color" : {
        "r" : 255,
        "g" : 200,
        "b" : 10
    }
}

这对缩进没有帮助,但其他答案似乎解决了这个问题。

其他回答

首先获取JSON字符串并从中生成真正的对象。循环遍历对象的所有属性,将项放置在无序列表中。每次你得到一个新对象,就创建一个新列表。

我想你的意思是这样的 JSON可视化

不知道你是否会用到它,但你可以问问作者。

像这样的事情??

pretty-json

https://github.com/warfares/pretty-json

生动的示例:

http://warfares.github.io/pretty-json/

对于语法高亮显示,使用代码修饰。我相信这就是StackOverflow用来突出显示代码的方法。

将格式化的JSON包装在代码块中,并赋予它们“prettyprint”类。 在你的页面中包含pretty .js。 确保文档的主体标记在加载时调用prettyPrint()

您将看到以页面中布局的格式突出显示的JSON语法。请看这里的例子。如果你有一个这样的代码块:

<code class="prettyprint">
    var jsonObj = {
        "height" : 6.2,
        "width" : 7.3,
        "length" : 9.1,
        "color" : {
            "r" : 255,
            "g" : 200,
            "b" : 10
        }
    }
</code>

它看起来是这样的:

var jsonObj = {
    "height" : 6.2,
    "width" : 7.3,
    "length" : 9.1,
    "color" : {
        "r" : 255,
        "g" : 200,
        "b" : 10
    }
}

这对缩进没有帮助,但其他答案似乎解决了这个问题。

最好的办法是使用后端语言的工具。你在用什么语言?对于Ruby,请尝试json_printer。