【问题标题】:Datatables - Prevent event bubbling数据表 - 防止事件冒泡
【发布时间】:2021-04-21 07:15:43
【问题描述】:

这个问题把我逼疯了。

我在 jquery DataTable 中有一个模式。

即使我尝试阻止事件传播,该事件仍会不断冒泡到主事件侦听器。

$("#dataTable tbody").on("click", "button", function (e) {
  let data = tbl.row($(this).parents('tr')).data()
  $("#link").on("click", function (e) {
    e.stopPropagation()
    ...
  })
})

有没有更好的方法来附加到这个事件?挑战是将行数据传递到嵌套模式中。

【问题讨论】:

  • 一般最好不要使用嵌套事件。您的 stopProp 事件只会在您单击一次后附加。只需将$("#link").on... 代码移动到与$("#dataTable... 代码相同的级别。
  • 谢谢,这确实有帮助。我将它移到了它自己的事件监听器中,并直接从 DOM 而不是数据表中获取数据。

标签: javascript html jquery datatables


【解决方案1】:

将事件监听器移动到与 $("dataTable") 代码相同的级别,而不是嵌套监听器:

$("#link").on("click", function () {
  let device = $("#device").text()
  let group = $("#change-group").val()
...
})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多