Angular2 - 点击事件:获取被点击元素的ID
Angular2 - click event: get ID of clicked element
我了解了图表 (primeng),现在我需要知道是否可以在单击图表时从图表中获取 ID。
仅供参考,我有一个包含 "open in new tab" 的上下文菜单,我需要打开上下文菜单的图表中的 ID。
右键单击 -> 从图表中获取 ID -> 使用 ID 打开新标签页,只显示该图表。
我看过一些类似 event.target.attributes.id /event.currenttarget 的东西,但那是 js,对吗?我正在使用打字稿。
所以问题其实很简单:我怎样才能做到这一点?
我是编程相关的新手,几周前才真正开始,所以请耐心等待,因为我可能无法像其他人一样快速理解所有内容。
编辑:
上下文菜单的菜单项:
this.ctitems = [
{
label: 'Öffnen(neuer Tab)',
icon: 'fa-plus',
command: (onClick) => {this.function()}
},
{
label: 'Öffnen(dieser Tab)',
icon: 'fa-hand-o-down'
}
];
获取id的函数
function() { event.target.getID <- problem }
一旦有了 ID,我就想将 ID 指定的项目推送到 TabMenu 中显示的项目数组中。但那是未来。现在我只需要获取ID。
html:
<p-chart height="100" width="100" class="ui-g-2 " type="line" id="linechart" [data]="ntwdata"></p-chart>
<p-contextMenu id="cm" [model]="ctitems"></p-contextMenu>
您没有将 event
变量传递给您的函数,因此您不能使用它。
像这样定义你的命令,然后它应该工作:
this.ctitems = [
{
label: 'Öffnen(neuer Tab)',
icon: 'fa-plus',
command: (event) => onClick(event)
},
{
label: 'Öffnen(dieser Tab)',
icon: 'fa-hand-o-down'
}
];
[...]
onClick(event) {
let target = event.target || event.srcElement || event.currentTarget;
let idAttr = target.attributes.id;
let id = idAttr.nodeValue;
console.log(id);
}
我了解了图表 (primeng),现在我需要知道是否可以在单击图表时从图表中获取 ID。
仅供参考,我有一个包含 "open in new tab" 的上下文菜单,我需要打开上下文菜单的图表中的 ID。
右键单击 -> 从图表中获取 ID -> 使用 ID 打开新标签页,只显示该图表。
我看过一些类似 event.target.attributes.id /event.currenttarget 的东西,但那是 js,对吗?我正在使用打字稿。
所以问题其实很简单:我怎样才能做到这一点?
我是编程相关的新手,几周前才真正开始,所以请耐心等待,因为我可能无法像其他人一样快速理解所有内容。
编辑:
上下文菜单的菜单项:
this.ctitems = [
{
label: 'Öffnen(neuer Tab)',
icon: 'fa-plus',
command: (onClick) => {this.function()}
},
{
label: 'Öffnen(dieser Tab)',
icon: 'fa-hand-o-down'
}
];
获取id的函数
function() { event.target.getID <- problem }
一旦有了 ID,我就想将 ID 指定的项目推送到 TabMenu 中显示的项目数组中。但那是未来。现在我只需要获取ID。
html:
<p-chart height="100" width="100" class="ui-g-2 " type="line" id="linechart" [data]="ntwdata"></p-chart>
<p-contextMenu id="cm" [model]="ctitems"></p-contextMenu>
您没有将 event
变量传递给您的函数,因此您不能使用它。
像这样定义你的命令,然后它应该工作:
this.ctitems = [
{
label: 'Öffnen(neuer Tab)',
icon: 'fa-plus',
command: (event) => onClick(event)
},
{
label: 'Öffnen(dieser Tab)',
icon: 'fa-hand-o-down'
}
];
[...]
onClick(event) {
let target = event.target || event.srcElement || event.currentTarget;
let idAttr = target.attributes.id;
let id = idAttr.nodeValue;
console.log(id);
}