我正在使用innerHTML
绑定来创建动态a
代码,如以下代码所示:
<span *ngIf="msg" [innerHTML]="msg | sanitizeHtml"></span>
在.ts中,我尝试使用addEventListerner
以下命令添加click事件:
ngAfterViewInit() {
this.elements = this.elem.nativeElement.querySelectorAll('.tradebtn');
if (this.elements && this.elements.length > 0) {
this.elements.forEach((f) => {
console.log(f)
f.addEventListener('click', (event) => {
console.log(event)
});
});
}
}
我得到elements
元素列表来添加事件监听器。Click事件侦听器有时可以运行,但在大多数情况下不起作用。
我对这种行为感到困惑。我也尝试附上代码,setTimeout()
但没有运气。
您应该使用它@HostListener
来处理事件。
添加条件event.target.matches('.tradebtn')
以检查元素源。
@HostListener('document:click', ['$event'])
onclick(event) {
if(event.target.matches('.tradebtn')) {
console.log(event)
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句