【发布时间】:2020-07-29 11:14:45
【问题描述】:
你好, 我有一个这样的数组:
let Array1 = [
{name:"try1", id:"id1", symbol:"symbol1"},
{name:"try2", id:"id2", symbol:"symbol2"},
{name:"try3", id:"id3", symbol:"symbol3"},
{name:"try4", id:"id4", symbol:"symbol4"},
{name:"try5", id:"id5", symbol:"symbol5"}
]
我想让它们中的每一个都成为一个按钮。我可以点击每一个。 为此,我使用 .map Funnction(我不确定这是最好的选择)
Array1.map(data => $(".check").html(`<a id="${data.id}" class="btn btn-info" href="#" role="button">${data.id}</a>`))
到目前为止,我得到了 5 个按钮。 1 按钮每个对象与按钮的 id。
问题从这里开始:我试图在此按钮上捕获单击事件。我做不到..
我试过了:
(`${data.id}`).click(e => console.log("click))
我很乐意寻求帮助或以任何其他方式获得相同的结果。谢谢!!
【问题讨论】:
-
(``)你用的选择器是什么? -
${data.id} 。在帖子中编辑
-
不是在所有按钮上添加单独的单击事件侦听器,而是在所有按钮的父元素上添加单击事件侦听器并使用
Event.target,您可以检查按钮是否被单击,还点击了哪个按钮。 -
“我使用 .map 函数(我不确定这是不是最好的选择)”。不,不是。您只需将其用作循环。在这种情况下使用
.forEach。.map()仅在您将其结果分配给某物时才有用。 (let arr2 = arr.map(...)) -
如果我解决了你的问题,你介意accepting the answer 吗?
标签: javascript jquery arrays object