81,092
社区成员
发帖
与我相关
我的任务
分享
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="UTF-8"/>
<script src="test.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript">
//后台查询的数据,这里我使用假数据
var initData=function(){
var jsonlist=[];
for(var i=0;i<20;i++){
var node={};
node.id=i+'';
node.name='数据'+i;
//jsonlist.add(node);
jsonlist.push(node);
}
return jsonlist;
}
var getDatai=function(datas,i,count){
var retJson=[];
for(var k=i;k<i+count;k++){
retJson.push(datas[k]);
}
return retJson;
}
var clearDatas=function(){
var tb=document.getElementById('mainTb');
var rows=tb.rows.length;
//从这个例子可以看出,var引用变量动态随着对象变化
if(rows>1){
for(var i=1;i<rows;i++){
tb.deleteRow(1);
console.log(rows+',i='+i);
}
}
}
var showDatas=function(){
//清空数据
clearDatas();
//分组数
var count=parseInt(document.getElementById('fenzu').value==''?0:document.getElementById('fenzu').value);
var gcount=0;//每组显示数目
var tb=document.getElementById('mainTb');
if(count>0){
var jsonarr=initData();
if(jsonarr.length>0){
//gcount=jsonarr/count;
//余数
var rcount=jsonarr.length%count;
gcount=parseInt(jsonarr.length/count);
var current_index=0;//当前分组开始位置的索引
var current_rows=0;
//分组创建table
for(var i=0;i<count;i++){
//其实这里使用table嵌套比较好,这里图方便不再叙述
var row=tb.insertRow();
var cell=row.insertCell();
row.insertCell();
cell.colSpan=2;
cell.innerHTML='第'+(i+1)+'分组';
//取第i组数据,这里从0开始默认第一组
if(rcount>0){
console.log(rcount);
current_rows=gcount+1;
rcount=rcount-1;
}else{
current_rows=gcount;
}
if(i==0){
current_index=0;
}else{
current_index+=current_rows;
}
var jnodes=getDatai(jsonarr,current_index,current_rows);
//console.log(jnodes);
for(var k=0;k<current_rows;k++){
if(jnodes[k]!=null){
row = tb.insertRow();//创建一行
var cell = row.insertCell();//创建一个单元
//cell.width = "150";//更改cell的各种属性
cell.style.backgroundColor = "#999999";
cell.innerHTML=jnodes[k].id;
cell = row.insertCell();//创建一个单元
//cell.width = "150";//更改cell的各种属性
cell.style.backgroundColor = "#999999";
cell.innerHTML=jnodes[k].name;
}
}
}
}
}
}
//初始化加载时候调用
</script>
<style type="text/css">
body{
text-align: center;
-webkit-user-select: none;
}
input[type=button]{
width: 90px;
}
ul{display: none}
#d1{
font-family: "微软雅黑";
background-image: url(img/HBuilder.png)
}
</style>
<link rel="stylesheet" type="text/css" href="test.css"/>
</head>
<body style='margin: 0'>
输入分组:<input type="text" name='fenzu' id='fenzu'/><input type='button' value='分组显示' onclick="showDatas()"/>
<br>
<table id='mainTb'>
<th>
<td>ID</td>
<td>数据</td>
</th>
</table>
</body>
</html>