gpt4 book ai didi

Javascript,从对象构造函数中的另一个onclick调用函数

转载 作者:行者123 更新时间:2023-11-30 07:14:07 26 4
gpt4 key购买 nike

我需要帮助从 thediv.onclick 内部调用 this.load 函数。我去掉了大部分代码,所以它真的很基本,但我真的找不到办法去做。这是我目前拥有的:

function CreatePizza(Name, Toppings) {
this.n = Name;
this.t = Toppings;
this.load = function loadpizza() {
//function that i want to be called
}

this.create = function button() {
var thediv = document.createElement("div");
thediv.onclick = function() {
// Call this.load function here
}
}
}

最佳答案

问题是在onclick里面处理程序,this将引用 <div> ,而不是另一个this你反复提到的。

两种可能的解决方案:

  1. 保存对您想要的 this 的引用:

    that = this;
    thediv.onclick = function () {
    that.load()
    };
  2. 绑定(bind) this到你的功能:

    thediv.onclick = function () {
    this.load();
    }.bind(this);

    或者,如果这是您在该函数中所做的唯一事情:

    thediv.onclick = this.load.bind(this);

关于Javascript,从对象构造函数中的另一个onclick调用函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35042800/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com