zoukankan      html  css  js  c++  java
  • js将json数据动态生成表格

      今天开发中遇到需要展示动态数据的问题, 具体要求是后端传来的json字符串,要在前端页面以table表格的形式展示,

    其实没啥难的,就是拼接table标签,纯属体力活,于是自己写了个呆萌,保存起来,以便下次使用

     最终效果:

    <!DOCTYPE HTML>
    <html>
    <head>
    <title>利用json数据动态创建表格</title>
    <meta charset="utf-8" />
    <style>
    table{width:600px; 
    border-collapse:collapse; 
    text-align:center;
    }
    td,th{border:1px solid #ccc}
    </style>
    
    </head>
    <body>
    <div id="data"></div>
    <script>
    var json=[
    {"name":"王大", "salary":11000, "age":25},
    {"name":"李二", "salary":13000, "age":22},
    {"name":"张三", "salary":12000, "age":25}
    ];
    //创建table
    var table=
    document.createElement("table");
    //创建thead,并追加到table中
    var thead=
    document.createElement("thead");
    table.appendChild(thead);
    //创建tr,并追加到thead
    var tr=
    document.createElement("tr");
    thead.appendChild(tr);
    //json数组中第1个人的每个属性
    for(var key in json[0]){
    //创建th
    var th=
    document.createElement("th");
    //设置th的内容为key
    th.innerHTML=key;
    //将th追加到tr中
    tr.appendChild(th);
    }
    //创建tbody元素
    var tbody=
    document.createElement("tbody");
    //将tbody追加到table中
    table.appendChild(tbody);
    //遍历json中所有员工
    for(var i=0;i<json.length;i++){
    //创建tr
    var tr=
    document.createElement("tr");
    //遍历当前员工的每个属性
    for(var key in json[i]){
    //创建td
    var td=
    document.createElement("td");
    //设置td的内容为当前员工的当前属性值
    td.innerHTML=json[i][key];
    //将td追加到tr
    tr.appendChild(td);
    }//(遍历结束)
    //将tr追加到tbody中
    tbody.appendChild(tr);
    }
    //将table添加到id为data的div下
    document.getElementById("data")
    .appendChild(table);
    </script>
    </body>
    </html>
  • 相关阅读:
    养生与健康
    vue + elementui 使用多选按钮实现单选功能
    生活小方
    和业务相关的工具函数
    vue + element ui开发过程中需要注意的几个点
    【转】webpack中关于source map的配置
    【转】移动前端手机输入法自带emoji表情字符处理
    webpack相关
    vue项目优化
    运维集群架构演变之美 【转】
  • 原文地址:https://www.cnblogs.com/web-fusheng/p/6735233.html
Copyright © 2011-2022 走看看