尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Layui弹出层如何实现在关闭时自动刷新底部的父表格

Layui弹出层如何实现在关闭时自动刷新底部的父表格 layui.layer.close后需手动调用父页面表格实例的reload方法关键是在父页面用var tableInstable.render({...})保存实例并挂载到window.parentTable子页面通过parent.window.parentTable.reload()触发重载。layui.layer.close 后怎么触发父页面表格重载关闭弹出层本身不会自动刷新任何东西必须手动在关闭回调里调用表格的 reload 方法。关键是找到正确的表格实例——不是靠 DOM 查找而是靠初始化时存下来的 tableIns 变量。常见错误是在弹窗 JS 里直接写 layui.table.reload(id) 却没传参数或传了错误的 id比如用了 class 而非 lay-filter 值结果 reload 不生效看着像“没刷新”。父页面初始化表格时一定要用 var tableIns table.render({...}) 接收返回值不能只写 table.render({...})把 tableIns 挂到 window 或全局对象上如 window.parentTable tableIns方便子页面访问在弹出层关闭前调用parent.window.parentTable.reload({page: {curr: 1}})加 page.curr: 1 是防止翻页状态下刷新后显示空页layer.open 的 success 回调里能拿到父页面 tableIns 吗不能直接拿因为 success 回调执行时弹窗内容刚渲染完JS 还没加载完毕此时子页面脚本还没执行window.parentTable 可能还没定义。真正安全的位置是子页面自己的 JS 里或者 layer 的 end 回调关闭动画结束时。 知网AI智能写作 知网AI智能写作写文档、写报告如此简单
返回列表