layui tab关闭前实现监听

layui-v2.5.7

需求

layui tab 删除的时候判断是否可以执行删除

解决思路

添加新tab 的时候:

  1. 解绑layui 自动生成的 tab 删除事件
  2. 绑定自定义的 这个tab的删除事件

   

自定义事件内完成监听,满足条件则调用删除tab

代码如下

/*
* 添加 tab
*/
function tabAdd() {
    var tabId = new Date().getTime()
    layui.element.tabAdd('formTab', {
        title: '标题',
        content: '<div>内容</div>',
        id: tabId //实际使用一般是规定好的id,这里以时间戳模拟下
    })
    layui.element.tabChange('formTab', tabId);//切换到当前tab
    layui.element.render("formTab");
    
    //增加点击关闭事件
    var r = $(".layui-tab-title").find("li");
    let close = r.eq(r.length - 1).children("i")
    close.unbind('click') // 解除layui 自动绑定的删除
    //每次新打开tab都是最后一个,所以只对最后一个tab添加点击关闭事件
    close.on("click", function () {
        // 监听的内容  判断是否需要删除tab 
        if(tabId){
        // 不执行删除tab的操作
        } else {
            layui.element.tabDelete('formTab', tabId);
        }
    })
}
<div class="layui-tab" id="regist" lay-filter="regist" lay-allowclose="true">
    <ul class="layui-tab-title">
    </ul>
    <div class="layui-tab-content">
    </div>
</div>

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值