将一个2级联动的数据用表格的形式显示出来

数据:

idnamep_id
1体育0
2语文0
3数学0
4铅球1
5排球1
6文言文2
7函数3
8图形面积3

现在要求将数据库里的这些数据在页面上以列表的方式显示

jsp:

<table  id="body"> 
  <tr>  
<th>学习大类</th>
<th>具体项目</th>
  </tr> 

</table> 


js://引用了jquery

$(function(){
getType(0);//将初始父节点传进去
});


var typeArray=${typeListJson}//后台获取到的数据json串


 //生成列表
 function getXctype(p_value){
var p_listArray=getListByPvalue(p_value);//获取大类列表
var s_listArray=new Array(p_listArray.length);//生成储存子列表的集合
//循环大类列表,获取其下属的小类
for(var i=0;i<p_listArray.length;i++){
var sarray=getListByPvalue(p_listArray[i].ID);//获取下属小类集合
s_listArray[i]=sarray;
}
 
//对数组进行操作
makeTypeList(p_listArray,s_listArray);
 }
 
 //根据父值获取所属的列表
 function getListByPvalue(p_value){
var array=new Array();
var index=0;
for(var i=0;i<xcTypeArray.length;i++){
if(xcTypeArray[i].P_ID==p_value){
array[index]=xcTypeArray[i];
index++
}
}
return array;
 }
 //根据父数组和子数组生成列表页面
 function makeTypeList(p_listArray,s_listArray){
var str="";//列表语句
for(var i=0;i<p_listArray.length;i++){
var sarray=s_listArray[i];//当前父节点下的子集
//生成列表语句
str+="<tr><td rowspan='"+sarray.length+"'>"+p_listArray[i].NAME+"</td>";
if(sarray.length==0){
str+="<td></td></tr>"
}
for(var k=0;k<sarray.length;k++){
if(k==0){
str+="<td>"+sarray[k].NAME+"</td></tr>";
}else{
str+="<tr ><td>"+sarray[k].NAME+"</td></tr>";
}
 
}
}
 
$('#body').append(str);
 }


最终呈现的效果:

学习大类具体项目
体育铅球
排球
语文文言文
数学函数
图形面积


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值