实现效果图:
适配分页;全选;
后台嵌套数据:
获取数据后;渲染前操作:
,done:function(res){if(res.data){for(var i = 0;i<res.data.length;i++){var trObj = $('[lay-id="table"] .layui-table-box').find('[data-index="'+i+'"]');var trObjFixed = $('[lay-id="table"] .layui-table-fixed').find('[data-index="'+i+'"]');var classListTr='';var classListTrFixed="";for(var j = 0;j<res.data[i].classList.length;j++){var classList=res.data[i].classList[j]if(j==0){classListTrFixed='<td class="classListTd" data-field="project" data-key="1-0-9"><div class="layui-table-cell">'+classList.pname+'</div></td>'+'<td class="classListTd" data-field="specialty" data-key="1-0-10"><div class="layui-table-cell">'+classList.sname+'</div></td>'+'<td class="classListTd" data-field="grade" data-key="1-0-11"><div class="layui-table-cell">'+classList.gname+'</div></td>'+'<td class="classListTd" data-field="cname" data-key="1-0-12"><div class="layui-table-cell">'+classList.name+'</div></td>'+'<td class="classListTd" data-field="counselorName" data-key="1-0-13"><div class="layui-table-cell">'+classList.tutorName+'</div></td>'}else{classListTr+='<tr data-index="'+i+'">'+'<td class="classListTd" data-field="project" data-key="1-0-9"><div class="layui-table-cell">'+classList.pname+'</div></td>'+'<td class="classListTd" data-field="specialty" data-key="1-0-10"><div class="layui-table-cell">'+classList.sname+'</div></td>'+'<td class="classListTd" data-field="grade" data-key="1-0-11"><div class="layui-table-cell">'+classList.gname+'</div></td>'+'<td class="classListTd" data-field="cname" data-key="1-0-12"><div class="layui-table-cell">'+classList.name+'</div></td>'+'<td class="classListTd" data-field="counselorName" data-key="1-0-13"><div class="layui-table-cell">'+classList.tutorName+'</div></td>'+'</tr>'}}trObjFixed.append(classListTrFixed);trObj.after(classListTr);trObj.find('.layui-table-col-special').attr('rowspan',res.data[i].classList.length);trObj.find('[data-field="name"]').attr('rowspan',res.data[i].classList.length);trObj.find('[data-field="sex"]').attr('rowspan',res.data[i].classList.length);trObj.find('[data-field="birthday"]').attr('rowspan',res.data[i].classList.length);trObj.find('[data-field="idno"]').attr('rowspan',res.data[i].classList.length);trObj.find('[data-field="politiceStatus"]').attr('rowspan',res.data[i].classList.length);trObj.find('[data-field="education"]').attr('rowspan',res.data[i].classList.length);trObj.find('[data-field="mobile"]').attr('rowspan',res.data[i].classList.length);trObj.find('[data-field="email"]').attr('rowspan',res.data[i].classList.length);}}
}