我试图添加一个点击事件到一个动态创建的HTML元素,目前代码如下。使用angular2向点击事件添加一个动态创建的html元素
let parameterLabels = document.getElementById('parameterLabels');
p_meter.classList.add('active', 'filtered');
parameterLabels.innerHTML += `
<a id="label_${parameter.name}" class="ui label transition animating scale in"
data-value=${parameter.name}>${parameter.name}<i id="remove_${parameter.name}" class="delete icon"></i></a>`;
document.getElementById(`remove_${parameter.name}`).addEventListener('click',() => {
this.removeParameter(`${parameter.name}`);
});
目前我通过addEventListener分配click事件,但它仅对创建的元素有效。如果我继续创建新的动态元素,则只有最新的点击事件才能起作用,而不是以前创建的元素的点击事件。有没有一种方法可以绑定html中的click事件,就像angular2 (click)="removeParameter($event)"
那样,它也不适合我。任何想法?
我会推荐使用* ngFor来创建动态html元素,通过让数组0123'说** list **并更新** list **将创建动态html元素。 –