• jsp页面根据json数据动态生成table


    根据需求由于不同的表要在同一个jsp展示,点击某个表名便显示某张表内容,对于java后台传给jsp页面的json形式的数据是怎么动态生成table的呢?

    找了好久,终于找到某位前辈的答案,在此表示衷心的感谢!

    做了部分调整,做下笔记,下面便是这个html的情况。

    1. <html>  
    2. <head>  
    3. <title></title>  
    4. <script type="text/javascript">       
    5.           var jsonArray = [{"编号":"001","名称":"小苹果","描述":"现代神曲,大妈的最爱"},{"编号":"002","名称":"mou宝","描述":"想怎么玩就怎么完"}];  
    6.           var headArray = [];  
    7.           function parseHead(oneRow) {  
    8.                         for ( var i in oneRow) {  
    9.                                 headArray[headArray.length] = i;  
    10.                          }  
    11.             }  
    12.             function appendTable() {  
    13.                           parseHead(jsonArray[0]);  
    14.                           var div = document.getElementById("div1");   
    15.                           var table = document.createElement("table");  
    16.                           var thead = document.createElement("tr");  
    17.                           for ( var count = 0; count < headArray.length; count++) {  
    18.                                     var td = document.createElement("th");  
    19.                                     td.innerHTML = headArray[count];  
    20.                                     thead.appendChild(td);  
    21.                            }  
    22.                            table.appendChild(thead);  
    23.                           for ( var tableRowNo = 0; tableRowNo < jsonArray.length; tableRowNo++) {  
    24.                                     var tr = document.createElement("tr");  
    25.                                     for ( var headCount = 0; headCount < headArray.length; headCount++) {  
    26.                                             var cell = document.createElement("td");  
    27.                                             cell.innerHTML = jsonArray[tableRowNo][headArray[headCount]];  
    28.                                             tr.appendChild(cell);  
    29.                                     }  
    30.                                     table.appendChild(tr);  
    31.                          }  
    32.                           div.appendChild(table);  
    33.         }                         
    34.             
    35. </script>  
    36.     <style>  
    37.         table {  
    38.              600px;  
    39.             padding: 0 ;  
    40.             margin: 100 auto;  
    41.             border-collapse: collapse;  
    42.         }  
    43.         td,th {  
    44.             border: 1px solid #ddd;  
    45.             padding: 6px 6px 6px 12px;  
    46.             color: #4f6b72;  
    47.             text-align: center;  
    48.         }  
    49.         th {  
    50.             background: #d3d3d3;  
    51.               
    52.         }  
    53.     </style>  
    54. </head>  
    55. <body onload="appendTable(jsonArray);">  
    56.     <div id="div1"></div>  
    57. </body>  
    58. </html>  

    
    

    效果如下图所示:



  • 相关阅读:
    【原创】自己动手写工具----签到器[Beta 1.0]
    都2020了,还不好好学学泛型?
    ThreadLocal = 本地线程?
    从BWM生产学习工厂模式
    你还在用BeanUtils进行对象属性拷贝?
    JDK 1.8 之 Map.merge()
    Spring Boot认证:整合Jwt
    以商品超卖为例讲解Redis分布式锁
    如何从 if-else 的参数校验中解放出来?
    分布式全局唯一ID生成策略​
  • 原文地址:https://www.cnblogs.com/jpfss/p/9104686.html
Copyright © 2020-2023  润新知