分页

  1. >  
  2. <html>  
  3.   
  4.     <head>  
  5.         <meta charset="UTF-8">  
  6.         <title>js解析json添加到表格并分页title>  
  7.     head>  
  8.     <script type="text/javascript">  
  9.         var tableData = [{  
  10.             "C0": "临夏州_康乐县",  
  11.             "C1":  190893.39,  
  12.             "C2":  24544.65,  
  13.             "AREA_ID": "930013005"  
  14.         }, {  
  15.             "C0" :   "临夏州_永靖县",  
  16.             "C1" :  368900.35,  
  17.             "C2" :  40592.19,  
  18.             "AREA_ID" : "930013006"  
  19.         }, {  
  20.             "C0" :   "兰州市_东岗分局",  
  21.             "C1" :  88.48,  
  22.             "C2" :  126.4,  
  23.             "AREA_ID" : "930013106"   
  24.         }, {  
  25.             "C0" :   "临夏州_临夏县",  
  26.             "C1" :  107337.9,  
  27.              "C2":  20612.1,  
  28.             "AREA_ID" : "930013008"  
  29.         }, {  
  30.             "C0" : "临夏州_广河县",  
  31.             "C1" :  69738.07,  
  32.             "C2" :  34894.44,  
  33.             "AREA_ID": "930013003"  
  34.         }, {  
  35.             "C0" :   "临夏州_和政县",  
  36.             "C1" :  46622.96,  
  37.             "C2" :  20954.97,  
  38.             "AREA_ID": "930013002"  
  39.         }, {  
  40.             "C0": "临夏州_东乡县",  
  41.             "C1" :  96021.84,  
  42.             "C2" :  16725.63,  
  43.             "AREA_ID" : "930013004"  
  44.         }, {  
  45.             "C0" : "临夏州_临夏市中心",  
  46.             "C1" : 1845311.12,  
  47.             "C2" : 129478.93,  
  48.             "AREA_ID" : "930013001"  
  49.         }, {  
  50.             "C0" : "天水市_秦州区",  
  51.             "C1" : 0,  
  52.             "C2" : 0,  
  53.             "AREA_ID" : "930013801"  
  54.         }, {  
  55.             "C0" :   "临夏州_积石山",  
  56.             "C1" :  256181.79,  
  57.             "C2" :  15185.98,  
  58.             "AREA_ID" : "930013007"  
  59.         }, {  
  60.             "C0" :   "酒泉_肃州区",  
  61.             "C1" :  264312,  
  62.             "C2" :  402.6,  
  63.             "AREA_ID" :   "930013701"  
  64.         }];  
  65.         var columns[{  
  66.             "cid": "C1",  
  67.             "ctext": "客户总收入"  
  68.         }, {  
  69.             "cid" :   "C2",  
  70.             "ctext" : "当月出账费用  
  71.         }];  
  72.         /**  
  73.           page:页码    pageSize:每页的记录条数  此方法除了传入page和pageSize之外,还应知道的有三个参数:   
  74.            一、表的全部数据,json串格式,可通过action查询数据库得到。  
  75.                二、表头所对应的列的key及名称,也是json串格式    
  76.            三、表所对应的id   
  77.            注:此处只是适合表头只有一行,且事先写好的情况。您可以根据需要改一下,逻辑思路就是这样,欢迎批评指正  
  78.          */  
  79.         function splitPage(page, pageSize) {  
  80.             alert(1)  
  81.             var table = document.getElementById("#page_table");  
  82.             var num = table.rows.length; //table.rows返回表格中包含的所有行,此处假设表由表头1行和表体N行组成  
  83.             alert(num);  
  84.             //清除tbody  
  85.             for (var i = num - 1; i > 0; i--) {  
  86.                 table.deleteRow(i);  
  87.             }  
  88.             var totalNums = tableData.length; //总行数  
  89.             var totalPage = Math.ceil(totalNums / pageSize); //总页数  
  90.             var begin = (page - 1) * pageSize; //页起始位置(包括)  
  91.             var end = page * pageSize; //页结束位置(不包括)  
  92.             end  =  end  > totalNums  ?  totalNums  :  end;   
  93.             //向tbody中写入数据  
  94.             var n = 1; //tbody的起始行  
  95.             for (var i = begin; i < end; i++) {  
  96.                 var row = table.insertRow(n++);  
  97.                 var rowData = tableData[i];  
  98.                 for (j = 0; j < columns.length; j++) {  
  99.                     var col = columns[j].cid;  
  100.                     var cell = row.insertCell(j);  
  101.                     var cellData = rowData[col];  
  102.                     cell.innerHTML = cellData;  
  103.                 }  
  104.             }  
  105.             //生成分页工具条  
  106.             varpageBar  =  "第" + page +  "页/共"  +  totalPage  +  "页"  +  " ";  
  107.             if (page > 1) {  
  108.                 pageBar  +=  "<a href=\"javascript:splitPage(" + 1 + ","  + pageSize + ");\">首页a> ";   
  109.             } else {  
  110.                 pageBar += "首页 ";  
  111.             }  
  112.             if  (page  >  1)  {  
  113.                 pageBar +=  "<a href=\"javascript:splitPage(" + (page - 1)  +  ","  + pageSize  + ");\">上一页a> ";     
  114.             }   
  115.             else  {  
  116.                 pageBar  += "上一页 ";  
  117.             }  
  118.             if (page < totalPage) {  
  119.                 pageBar  +=  "<a href=\"javascript:splitPage(" + (page + 1) + ","  + pageSize  + ");\">下一页a> ";     
  120.             }   
  121.             else  {  
  122.                 pageBar  += "下一页";   
  123.             }     
  124.             if  (page  < totalPage) {  
  125.                 pageBar  +=  "<a href=\"javascript:splitPage("  + (totalPage)  + ","  + pageSize + ");\">尾页a> ";     
  126.             }   
  127.             else  {  
  128.                 pageBar += "尾页 ";     
  129.             }     
  130.             document.getElementById("#page_bar").innerHTML =  pageBar;  
  131.         }  
  132.     script>  
  133.   
  134.     <body onload="splitPage(1,3)">  
  135.         <table id="page_table">  
  136.             <thead>  
  137.                 <tr>  
  138.                     <th>h1th>  
  139.                     <th>h2th>  
  140.                     <th>h3th>   
  141.                  tr>  
  142.             thead>  
  143.             <tbody>  
  144.                 <tr>  
  145.                     <td>111td>  
  146.                     <td>222td>  
  147.                     <td>333td>  
  148.                 tr>  
  149.             tbody>  
  150.             table>  
  151.             <div id="page_bar">div>  
  152.     body>  
  153.   
  154. html> 

你可能感兴趣的:(java编程中的问题)