我在html文件中创建了一个div,然后使用document.getElementByID在ts文件中对其进行了引用。然后,我将其内部html用作信息窗口的内容。但是,当我不知道如何使点击有效。当我尝试向该div中使用的任何元素添加侦听器时,它不起作用
我尝试添加(click)=“ functionName()”,也尝试将document.getElementByID存储在变量中,并尝试添加事件侦听器。
用于html
<div id="newpininfo" class="newpininfo">
<ion-item detail-push>
Save Spot
<ion-icon color="white" name="ios-add-outline" item-left></ion-icon>
</ion-item>
</div>
ts
var testelement = document.getElementByID('newpininfo');
testelement.addEventListener('click', function() =>{
//do something
});
答案 0 :(得分:1)
我也面临着同样的问题。这个技巧解决了我的问题:
在html中:
<div onclick="Window.myComponent.test()" id="newpininfo" class="newpininfo">
<ion-item detail-push>
Save Spot
<ion-icon color="white" name="ios-add-outline" item-left></ion-icon>
</ion-item>
</div>
在组件(ts文件)
class
constructor(){
Window["myComponent"] = this;
}
test(){
console.log("testing");
}