我想从Javascript类创建一个处理程序'click',并将其附加到一个简单的按钮上。
我创建了一个简单的Javascript类:
// from ./myclass.js
class Myclass
{
constructor()
{
$("input.showAlert").bind("click", this._showAlert());
}
_showAlert(e){
alert("foo");
}
}
module.exports = {
Myclass
};
从我的主js文件:
// from ./main.js
const { Myclass } = require("./myclass");
var faa = new Myclass();
但如果我这样做,当我通过浏览器加载页面时,警报"foo"会自动出现。我不明白为什么,我不希望警报自动显示,但只有当我点击按钮"input.addButton"时。
我的(非常(简单的html文件:
<input class="showAlert" />
我的错误在哪里?
你不应该把你的薄荷糖称为
$("input.showAlert").bind("click", this._showAlert());
只需将此方法的链接传递为:
$("input.showAlert").bind("click", this._showAlert);
通过编写this._showAlert()
,您可以立即调用函数,尝试this._showAlert