zoukankan      html  css  js  c++  java
  • layer关闭单前层,刷新父层的解决方案

    我们写动态网页程序时通常会遇到这种情况:

      在一个页面添加数据到数据库中,添加成功时,要返回当前层的父级页面查看刚刚添加的数据,但我们发现父层依然是刚刚那些数据,并没有显示我们添加到数据库中的数据,这时候我们手动刷新一下浏览器数据就会出来,这样我们就知道了在数据添加成功的时候我们要先刷新父层,然后关闭当前的层。

    这里我使用了两种方法

      这是因为我用了两种提交表单的方式:

        一、通过form的action的方法使用不同的页面提交。

            当我们使用了不同的页面提交的话会出现一个bug,就是弹出层会不断重叠。

            这里我是用laravel框架写的写法(通过with带回一个判断条件并返回提交的页面,然后通过with存储在session中的数据判断)

              return back()->with('success','true'); //处理页面

              提交页面:

              @if(session('success'))
                  <script>
                      window.location.href = '需要刷新的父层地址';
                      parent.location.reload();
                  </script>
              @endif

        二、通过Ap接口在当前页面做Ajax提交,不跳转页面

                    //获取当前层的索引
                    var index = parent.layer.getFrameIndex(window.name);
                    //刷新父层
                    parent.$('.btn-refresh').click();
                    //关闭当前层
                    parent.layer.close(index);
  • 相关阅读:
    二维码跳转不同的 app store
    HTML 保存图片到本地
    HTML5 的一些小的整理吧
    Echarts 3.19 制作常用的图形 非静态
    word2010设置页码起始位置及前后页码不同的方法
    经struts2中的action后,jsp中css失效的问题
    在Linux和Windows下配置MyEclipse+Tomcat+JDK的一些问题
    MyEclipse自动退出问题解决办法
    (转)java web建议学习路线
    Linux中MyEclipse+tomcat遇到的问题
  • 原文地址:https://www.cnblogs.com/duansong/p/12184377.html
Copyright © 2011-2022 走看看