javascript - 调用类实例方法onclick javascript

标签 javascript class onclick

我有一个 javascript 文件,其中包含包含方法函数的类。我想知道如何从 onClick 事件调用类实例方法。

function MyClass()
{
    this.instanceData = "Display Me";

    this.DisplayData = function()
    {
        document.write(this.instanceData);
    }
}

var classInstance = new MyClass();

如何从 onClick 事件调用 classInstance 上的 DisplayData 函数。例如:

<button onClick="classInstance.DisplayData()">Click Me!</button>

这不起作用,但可以帮助我弄清楚我要做什么。有什么建议吗?

最佳答案

http://jsfiddle.net/EyMCQ/1/

正如您所注意到的,这不起作用,因为您声明的 var 保留在执行 block 的范围内。如果删除 var,它将起作用,因为 classInstance 现在处于全局范围内。

function MyClass() {
    this.instanceData = "Display Me";

    this.DisplayData = function() {
        alert(this.instanceData);
    }
}

classInstance = new MyClass();​

并这样调用它:

<button onClick="classInstance.DisplayData.call(classInstance)">Click Me!</button>​

http://jsfiddle.net/EyMCQ/2/

关于javascript - 调用类实例方法onclick javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9318501/

相关文章:

javascript - 如何加载多个文件图像作为数据 url 并在之后单独更改它们

javascript - jQuery - 将 .live 转换为 .on click

java - 如何为循环中的对象提供新名称?

javascript - onclick 行为异常 - 刷新页面而不是显示内容

javascript - 无限循环的数字滚动条,直到按下停止按钮

javascript - 尝试通过 map 方法渲染两个相邻的 tr 元素时, react 唯一的 key prop 错误

javascript - 兑现 promise 后传递错误

javascript - 在将生成的内容应用于 DOM 之前,将 Javascript 类应用于生成的内容

c++ - 使用 C++ 类定义多个数据结构

javascript - 单击时更改颜色