8月20日

今天继续运用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);

                   

                }

                });

 

 

  解决该问题一直在试错花了两个小时

 

学习时间:11:01到15:02

posted @ 2021-08-20 15:05  不咬牙  阅读(62)  评论(0编辑  收藏  举报