html页面展示json数据并格式化的方法

所属分类: 网页制作 / HTML/Xhtml 阅读数: 958
收藏 0 赞 0 分享

json数据在html页面展示并格式化

一、展现效果图

描述信息:

  • key值全部采用红色标出,表示重要参数;
  • value值采用不同颜色标出,数值类型的采用橘黄色,字符串采用绿色,布尔采用蓝色。。。

二、源代码展示

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 <style>
    pre {outline: 1px solid #ccc; padding: 5px; margin: 5px; }
    .string { color: green; }
    .number { color: darkorange; }
    .boolean { color: blue; }
    .null { color: magenta; }
    .key { color: red; }

    .showinfo{
        position: absolute;
        background-color: #eef1f8;
        width: 200px;
        padding: 5px;
        border-radius: 4px;
        border: 1px solid #ccc;
        display: none;
    }
    .showinfo pre{
        padding: 5px;
        border: 1px solid #ccc;
        margin:0;
    }
    table,th,td{
        border:1px solid blue;
    }
</style>
<script src="./js/jquery-1.8.3.min.js"></script>
<script type="text/javascript">

    $(document).ready(function(){
        $(".show-rough").mouseover(function(){
            var left = $(this).offset().left + $(this).width() +20;//计算div显示位置
            var top = $(this).offset().top + 20;
            var _jsonDate = $.parseJSON($(this).text());
            var showJson = syntaxHighlight(_jsonDate);
            $("#show-info").css({"left":left,"top":top}).show();
            $("#show-pre").html(showJson);
        });
        $(".show-rough").mouseout(function(){
            $("#show-info").hide().html();
            $("#show-pre").html();
        })
    });
    //处理json数据,采用正则过滤出不同类型参数
	function syntaxHighlight(json) {
    if (typeof json != 'string') {
        json = JSON.stringify(json, undefined, 2);
    }
    json = json.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>');
    return json.replace(/("(\\u[a-zA-Z0-9]{4}|\\[^u]|[^\\"])*"(\s*:)?|\b(true|false|null)\b|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?)/g, function(match) {
        var cls = 'number';
        if (/^"/.test(match)) {
            if (/:$/.test(match)) {
                cls = 'key';
            } else {
                cls = 'string';
            }
        } else if (/true|false/.test(match)) {
            cls = 'boolean';
        } else if (/null/.test(match)) {
            cls = 'null';
        }
        return '<span class="' + cls + '">' + match + '</span>';
    });
};
</script>
</head>
<body>
<table>
    <thead>
        <tr>
            <th>姓名</th>
            <th>json数据</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>小三</td>
            <td class="show-rough">{ "name": "小三", "address":"北京路23号","age":16, "email": "123456@qq.com","Object":[{"职位":"经理"}],"del":[] }</td>
        </tr>
        <tr>
            <td>小四</td>
            <td class="show-rough">{ "name": "小四", "address":"上海路01号","age":27, "email": "222222@qq.com","Object":[],"del":[]  }</td>
        </tr>
    </tbody>
</table>
<div id="show-info" class="showinfo">
    <pre id="show-pre">

</pre>
</div>
</body>
</html>

三、源代码上传

源代码下载地址

到此这篇关于html页面展示json数据并格式化的方法的文章就介绍到这了,更多相关html展示json并格式化内容请搜索脚本之家以前的文章或继续浏览下面的相关文章,希望大家以后多多支持脚本之家!

更多精彩内容其他人还在看

HTML中的标签和元素的区别详解

很多人可能都没有把哪个叫标签,哪个叫元素这个概念搞清楚,包括之前的我也是,一直都是混淆着,特意搜索查阅了一些资料,现将我得出的结论写出来,与大家分享下
收藏 0 赞 0 分享

HTML中的base标签使用详解

在requireJS中,有一个属性叫baseURL,通过设置baseURL,我们可以将需要加载的文件路径写成相对于项目的,而不是相对于当前页面的
收藏 0 赞 0 分享

HTML select option基础理解及使用

本文将阐述下HTML select option基础(options[ ]数组的属性、option的方法)及应用介绍,感兴趣的朋友可以参考下哈,希望对你有所帮助
收藏 0 赞 0 分享

html固定标题列、标题头table具体实现代码

为了布局的美观度需要在html中固定标题列、标题头,本文整理了一些相关实现技巧,经测试还不错,感兴趣的朋友可以参考下哈,希望对你有所帮助
收藏 0 赞 0 分享

使用input type=text value=str取值不完全解决方案

想要取得格式化之后的数据时,在value=方法取值时,只能取到“XXXX年XX月XX日”,后面的“星期X”一直取不到解决方法如下,感兴趣的朋友可以参考下
收藏 0 赞 0 分享

html滚动条 textarea属性设置

本文介绍html滚动条 textarea属性设置:overflow内容溢出时的设置,scrollbar-3d-light-color立体滚动条亮边的颜色等等相关设置,有需要的朋友可以详细参考下,希望对你们有帮助
收藏 0 赞 0 分享

flash嵌入html 在html网页代码中嵌入Flash文件的解决方案(上)

在HTML代码中嵌入Flash文件一直都是广大web爱好者所所喜欢挑战的事,也算不上什么挑战(对于新手朋友来说吧)好了,闲话不多说,切入正题
收藏 0 赞 0 分享

flash嵌入html 在html网页代码中嵌入Flash文件的解决方案(下)

在HTML代码中嵌入Flash文件一直都是广大web爱好者所所喜欢挑战的事,也算不上什么挑战(对于新手朋友来说吧)好了,闲话不多说,切入正题
收藏 0 赞 0 分享

网页WB.ExecWB控件打印方法调用说明及参数介绍

网页WB.ExecWB控件打印方法调用WB.ExecWB(4,1) 说明及参数介绍:4,1 保存网页;4,2 保存网页(可以重新命名) ;6,1 直接打印等等有需要的朋友可以参考下
收藏 0 赞 0 分享

html+css布局的三种方式(自然布局/流动布局/定位布局)

html+css布局的三种方式(自然布局/流动布局/定位布局)一些新手朋友会很陌生,接下来为您详细介绍,感兴趣的朋友可以了解下
收藏 0 赞 0 分享
查看更多