layui数据表格
layui.use('table',function(){
var table=layui.table;
table.render({
elem:'table',
url:'../gettable', //请求地址,
method:'post', //请求方式
where:{
},
toolbar:'#toolbarDemo',
totalRow:true,
cols:[[
{field:'title',title:'标题'}, //width:宽度 hide: 是否初始隐藏,默认false
{title:'操作',align:'cunter',width:300,templet:function(d){
var h="";
h+='<a class="layui-btn layui-btn-xs" onclick="执行的方法(\''+d.xx/*传参*/+'\')">编辑</a>';
h+='<a class="layui-btn layui-btn-xs" onclick="执行的方法(\''+d.xx/*传参*/+'\')">删除</a>';
return h;
}}
]],
page:true, //是否开启分页,默认false
limit:10, //每页显示的条数
limitd:[10,20,30], //每页显示条数的选择项,默认:10,20,....90
request:{ //重新指定请求翻页参数
pageName:'page', //当前页
limitName:'pageSize' //每页显示的条数
},
response:{ //重新指定相应参数名称
countName:'allcount' //总页数
},
done:function(res,curr,count){
}
})
})
合并单元格:
done:function(res, curr, count) {
var data = res.data;
var mergeIndex = 0;//定位需要添加合并属性的行数
var mark = 1; //这里涉及到简单的运算,mark是计算每次需要合并的格子数
var columsName = ['','proNo','content','moldtype'];//需要合并的列名称
var columsIndex = [0,1,2,3];//需要合并的列索引值
for (var k = 0; k < columsName.length; k++)//这里循环所有要合并的列
{
var trArr = $(".layui-table-body>.layui-table").find("tr");//所有行
for (var i = 1; i < res.data.length; i++) { //这里循环表格当前的数据
var tdCurArr = trArr.eq(i).find("td").eq(columsIndex[k]);//获取当前行的当前列
var tdPreArr = trArr.eq(mergeIndex).find("td").eq(columsIndex[k]);//获取相同列的第一列
if (data[i][columsName[k]] === data[i - 1][columsName[k]]) { //后一行的值与前一行的值做比较,相同就需要合并
console.log(data[i][columsName[k]]);
console.log(data[i - 1][columsName[k]]);
mark += 1;
tdPreArr.each(function () {//相同列的第一列增加rowspan属性
$(this).attr("rowspan", mark);
});
tdCurArr.each(function () {//当前行隐藏
$(this).css("display", "none");
});
}else {
mergeIndex = i;
mark = 1;//一旦前后两行的值不一样了,那么需要合并的格子数mark就需要重新计算
}
}
}
}
二级菜单:
layui.use(['form','layer','layedit'],function(){
$=layui.jquery;
var form=layui.form;
var layer=layui.layer;
var layedit=layui.layedit;
var testers="";
$.each(data,function(index,item){
testers+='<option value="'+item.name+'">'+item.name+'</option>'
});
$("#id").html('<option value=""></option>');
$("#id").append(testers);
form.render();
//监听事件
form.on('select(lay-filter属性值)',function(data){
xxxx
})
})
数据返回格式:
{"allcount":"总条数","code":"0",msg:"","data:[{"id":"id"}........../*返回的数据*/]"}
{type:'checkbox',fixed:true}, //开启选择
var datas=table.checkStatus('id').data //获取选中行的所以数据,数组