关于layer.open中end的使用

  开发中遇到过一个问题,通过layer.open弹窗的弹出的编辑页面,点击保存之后需要刷新父页面,显示最新的信息。

先看一下官方文档中end参数的介绍:

 

 

我们只需要在layer.open方法参数中添加就可以实现关闭弹窗后刷新父页面

1
2
3
4
5
end: function () {
 
    table.reload('DemoList');   //table的id
 
  }

那如果我们编辑页面不仅有保存按钮,还有关闭按钮以及右上方的关闭,由于只要层销毁了,end都会执行,而我们不想后端没有数据变化时也刷新父页面怎么办,

首先在编辑页加上<input type="hidden" id="t_data"> ,如果点击保存等等将数据传入后端的操作, 加上$("#t_data").val(1);

接着在layer.open方法中:

复制代码
            success: function (layero, index) {
                body_edit = top.layer.getChildFrame('body', index);
            },
            end: function () {
                if (body_edit.find('#t_data').val() != '') {

                    table.reload('DemoList');
                }
            }                
复制代码

这样就解决了。

 

posted @   风吹那片海  阅读(1530)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示