layui.use(['form', 'table', 'laydate'], function() { var form = layui.form; var table = layui.table; var laydate = layui.laydate; //转换静态表格 table.init('bomView', { limit:10 ,url: '/ajax/bom/BomView?bom_id='+bom_id //数据接口 ,toolbar: '#toolbarDemo' //开启头部工具栏,并为其绑定左侧模板 ,defaultToolbar:[] ,method:'post' ,cellMinWidth: 80 //全局定义常规单元格的最小宽度 ,page: true //开启分页 }); function renderTable(){ table.init('bomView', { limit:10 ,url: '/ajax/bom/BomView?bom_id='+bom_id //数据接口 ,toolbar: '#toolbarDemo' //开启头部工具栏,并为其绑定左侧模板 ,defaultToolbar:[] ,method:'post' ,cellMinWidth: 80 //全局定义常规单元格的最小宽度 ,page: true //开启分页 }); } form.on('checkbox(checkall)', function (data) { var child = $(data.elem).parents('.layui-tab-item').find('input[type="checkbox"]'); child.each(function (index, item) { item.checked = data.elem.checked; }); form.render('checkbox'); }); //监听单元格编辑 table.on('edit(bomView)', function(obj){ var value = obj.value //得到修改后的值 ,data = obj.data //得到所在行所有键值 ,field = obj.field; //得到字段 if(field != "match_goods_id"){ obj.data.match_goods_id = 0; obj.update(data) //修改当前行数据 } }); function save_form_ajax(datax){ layer.open({ title: "保存bom单", content: "你确定保存吗?", btn: ['确认?', '取消'], yes: function(index) { layer.close(index); $.ajax({ url : "/ajax/bom/saveBomInfo", type: 'post', data: datax, success: function(resp) { if (resp.errcode == 0) { layer.msg(resp.errmsg); renderTable(); // 重新加载table }else{ layer.alert(resp.errmsg); } }, error: function(err) { console.log(err) } }) layer.msg('请耐心等待....', {icon: 16, time: 5000, shade: 0.3}) return false; }, cancel: function(index) { layer.close(index); } }) } function create_order_ajax(datax){ layer.open({ title: "创建bom订单", content: "你确定下单吗?", btn: ['确认?', '取消'], yes: function(index) { layer.close(index); $.ajax({ url : "/ajax/bom/createBomOrder", type: 'post', data: datax, success: function(resp) { if (resp.errcode == 0) { layer.alert(resp.errmsg); //return renderTable(); // 重新加载table }else{ layer.alert(resp.errmsg); } }, error: function(err) { console.log(err) } }) layer.msg('请耐心等待....', {icon: 16, time: 10000, shade: 0.3}) return false; }, cancel: function(index) { layer.close(index); } }) } //头工具栏事件 table.on('toolbar(bomView)', function(obj){ var checkStatus = table.checkStatus("layui_table_bomView"); var data = checkStatus.data; if(checkStatus.data.length <= 0){ layer.msg('请先选择需要保存的数据行', {icon: 16, time: 3000, shade: 0.3}) return } var datax = {} datax.data = data switch(obj.event){ case 'create_order': create_order_ajax(datax); break; case 'save_form': save_form_ajax(datax) break; }; }); })