javascript - 模板文字内的事件回调

标签 javascript template-literals

大家好,我是 javascript 新手,我正在尝试使用模板文字对用户的点击事件执行回调函数。然而,回调是在模板的评估上执行的。

row 方法由另一个类调用,该类传递项目和回调函数。

class Clazz {
  row(item, deleteCallback){
      return `<a href="#" onClick="${deleteCallback(item.requestId)}"></a>`
  }
}

谁能帮我吗?

最佳答案

我认为实现您想要实现的目标的更好方法是从 row 返回一个元素而不是 HTML 字符串。就像这样:

class Clazz {
  row(item, deleteCallback){
    const a  = document.createElement('a');
    a.href = '#';
    a.onclick = () => deleteCallback(item.requestId);
    return a;
  }
}

然后可以使用 appendafter 或类似的东西将其添加到 DOM。

关于javascript - 模板文字内的事件回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59291942/

相关文章:

javascript - 反引号 (`…` ) 在 JavaScript 中调用函数

javascript - 是否有与 JavaScript 中的模板文字等效的 Python?

JavaScript 正则表达式(当且仅当)

javascript - 如何让 Railscasts 剧集 "#229: Polling for Changes"使用嵌套路线?

带反引号的 JavaScript 模板文字不起作用

javascript - 字符串文字中的三元

javascript - ES6 模板文字比 eval 更安全吗?

javascript - Knockout JS - 函数不是构造函数

javascript - 当哈希值未更改时异步 onHashChange 触发

javascript - jquery 绑定(bind)按键在 android 选项卡中不起作用