关于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'); } }
这样就解决了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了