今天继续运用layui 突然发现一个大问题
通过按钮来操作数据要表格数据同步,这是我非常希望的效果,之前也实现过
table.on('tool(currentTableFilter)', function (obj) {
var data = obj.data;
if (obj.event === 'edit') {
//修改就是先把表格中数据加载到弹窗中,通过按钮的函数来获取弹窗中的数据并同步给数据表格,
//然后通过ajax将从弹窗中获取的数据传到后台进行数据库操作。
layer.open({
title: '出库',
type: 2,
maxmin:true,
shadeClose: true,
area: ['100%', '100%'],
content: 'edit.html',//就是出库页面
btn:['确定出库','放弃出库'],
yes:function(index,layero){
//回调的数值,从弹窗中获取回数值
var name=$(layero).find('iframe')[0].contentWindow.document.getElementById('name').value
var num=$(layero).find('iframe')[0].contentWindow.document.getElementById('num').value
var home=$(layero).find('iframe')[0].contentWindow.document.getElementById('home').value
var xh=$(layero).find('iframe')[0].contentWindow.document.getElementById('xh').value
var size=$(layero).find('iframe')[0].contentWindow.document.getElementById('size').value
var danwei=$(layero).find('iframe')[0].contentWindow.document.getElementById('danwei').value
var sname=$(layero).find('iframe')[0].contentWindow.document.getElementById('sname').value
var size1=size.replace(/\+/g, "%2B");
//异步数据库中数据 //让重载表放在ajax的成功函数中,不然会先执行表重载再执行ajax**************************这里特别要注意
我之前没有放在这个success函数中,也成功了,但是这一次的次序是有问题的
$.ajax({
url:'../oservlet?name='+name+"&num="+num+"&home="+home+"&xh="+xh+"&size="+size1+"&danwei="+danwei+"&sname="+sname,
//+"&home"+home+"&xh="+xh+"&size="+szie+"&danwei="+danwei+"&sname="+sname
type:'post',
//contentType:'',
dataType:'text',//ajax的dataType text 和json区别???????
data:{
'name':name,
'num':num,
'home':home,
'xh':xh,
'size':size1,
'danwei':danwei,
'sname':sname
},
success:function(res){
layer.msg('成功');
//同步数据表格中的数据
var table=layui.table;
table.reload('weishenme',{
url:'../llservlet?name='+name,
method:'post'
});
},
error:function(res){
layer.msg('失败')
}
});
layer.close(index);//关掉当前弹出层
}
,success:function(layero,index){//将表格中原始的数据放到弹窗中
var div=layero.find('iframe').contents().find('#main');
var body=layer.getChildFrame('body',index);
var iframeWindow=window['layui-layer-iframe'+index]
body.find('#name').val(data.name);
body.find('#home').val(data.home);
body.find('#xh').val(data.xh);
body.find('#size').val(data.size);
body.find('#danwei').val(data.danwei);
}
});
解决该问题一直在试错花了两个小时