layui table 点击复选框监听 时 发生行单击冒泡事件

不要使用 row 来监听行了,虽然他更方便,但却无法和同在一行的其他事件兼容!文档中提到这个事件是从 layui 2.4.0 开始新增的,所以我想这也是他跟其他的监听事件不兼容的原因之一吧。
放弃row(),使用 tool() 就可以解决问题啦!
首先在方法渲染的时候,在cols中给除了复选框的列(这是我的需求,因为我需要监听复选框)设置参数event,然后通过tool进行监听,代码如下:

cols: [[ //表头
            { type: 'radio', fixed: 'left' }
            , { type: 'numbers', title: '序号', event: 'singleclick' }
            , { field: 'yyrq', title: '预约日期', event: 'singleclick', width: 180, sort: true }
            , { field: 'yyhjr', title: '会见人', event: 'singleclick', sort: true, width: 180 }
            , { field: 'yyhjrsfz', title: '会见人身份证', event: 'singleclick', sort: true, width: 180 }
        ]]
 // 监听行单击事件
    table.on('tool(tableZyry)', function (obj) {
        myData = obj.data // 得到当前行数据
        console.log(myData);
        flag = true;
        form.val("showInfo", {
            'yydjsj': myData.yydjsj
            , 'yylfryxm': myData.yylfryxm
            , 'yylfrysfz': myData.yylfrysfz
            , 'yylfrylb': myData.yylfrylb
            , 'yylfrylbmx': myData.yylfrylbmx
            , 'yylfrysjh': myData.yylfrysjh
            , 'sfzxhj': myData.sfzxhj===0?'否':'是'
        });
        //选中radio样式
        //选中行样式
        obj.tr.addClass('layui-table-click').siblings().removeClass('layui-table-click')
        obj.tr.find('div.layui-unselect.layui-form-radio')[1].click();
        if (obj.event == 'singleclick') {
            searchFrInfo(myData.yyjlid, myData);
        }
    });
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值