| | |
| | | var pageCurr; |
| | | layui.use(['table','laydate', 'form'], function(){ |
| | | layui.config({ |
| | | base: baseUrl + "/static/layui/lay/modules/" |
| | | }).use(['table','laydate', 'form', 'tableMerge'], function(){ |
| | | var table = layui.table; |
| | | var $ = layui.jquery; |
| | | var layer = layui.layer; |
| | | var layDate = layui.laydate; |
| | | var form = layui.form; |
| | | var tableMerge = layui.tableMerge; |
| | | |
| | | // 数据渲染 |
| | | tableIns = table.render({ |
| | |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: [[ |
| | | {type: 'checkbox'} |
| | | ,{field: 'locNo$', align: 'center',title: '库位号', merge:true}//,event: 'locNo', style: 'cursor:pointer' |
| | | {type: 'checkbox', merge: ['locNo$']} |
| | | ,{field: 'locNo$', align: 'center',title: '库位号', merge: true}//,event: 'locNo', style: 'cursor:pointer' |
| | | // ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80} |
| | | ,{field: 'billNo', align: 'center',title: '单据编号'} |
| | | ,{field: 'seqNo', align: 'center',title: '序号'} |
| | |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | tableMerge.render(this); |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | |
| | | // }); |
| | | // $('.layui-form-checkbox').css("pointer-events", "none"); |
| | | // $('td[data-field="0').css("cursor", "pointer") |
| | | merge(res);//调用 |
| | | } |
| | | }); |
| | | |
| | |
| | | break; |
| | | } |
| | | }); |
| | | |
| | | function merge(res) { |
| | | var data = res.data; |
| | | var mergeIndex = 0;//定位需要添加合并属性的行数 |
| | | var mark = 1; //这里涉及到简单的运算,mark是计算每次需要合并的格子数 |
| | | var columsName = ['', 'locNo\\$'];//需要合并的列名称 |
| | | var columsIndex = [0, 1];//需要合并的列索引值 |
| | | |
| | | 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]]) { //后一行的值与前一行的值做比较,相同就需要合并 |
| | | mark += 1; |
| | | tdPreArr.each(function () {//相同列的第一列增加rowspan属性 |
| | | $(this).attr("rowspan", mark); |
| | | }); |
| | | tdCurArr.each(function () {//当前行隐藏 |
| | | $(this).css("display", "none"); |
| | | }); |
| | | } else { |
| | | mergeIndex = i; |
| | | mark = 1;//一旦前后两行的值不一样了,那么需要合并的格子数mark就需要重新计算 |
| | | } |
| | | } |
| | | mergeIndex = 0; |
| | | mark = 1; |
| | | } |
| | | } |
| | | |
| | | /* 弹窗 - 新增、修改 */ |
| | | function showEditModel(mData) { |
| | |
| | | curr: pageCurr |
| | | }, |
| | | done: function (res, curr, count) { |
| | | layui.tableMerge.render(this); |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |