JavaScript-调用类函数onclick

JavaScript-调用类函数onclick,javascript,jquery,class,jquery-events,Javascript,Jquery,Class,Jquery Events,我想在触发onclick事件时从类调用成员函数。onclick事件本身应该绑定在类内部。这就是我所拥有的: var MyClass = function() { this.value = 'hello'; this.update = function() { console.log(this.value); // Do some things with this.value }; $('#button').click(t

我想在触发onclick事件时从类调用成员函数。onclick事件本身应该绑定在类内部。这就是我所拥有的:

var MyClass = function()
{
    this.value = 'hello';

    this.update = function()
    {
        console.log(this.value);
        // Do some things with this.value
    };

    $('#button').click(this.update);
};
浏览器在更新功能中抱怨此.value未定义

在handler函数中,这是指您单击的按钮。为了避免这种情况,您可以将此引用存储到局部变量,然后改用它。本例中最常用的变量名是self或that

或者正如其他人所提到的,您可以明确地使用MyClass.update。

在处理函数中,这是指您单击的按钮。为了避免这种情况,您可以将此引用存储到局部变量,然后改用它。本例中最常用的变量名是self或that

或者正如其他人提到的,您可以明确地使用MyClass.update。

这不是指MyClass

var MyClass=函数{ var_this=这个; this.value='hello'; this.update=函数{ 警告此值; //用这个值做一些事情 } this.click=函数{ $“按钮”。单击\u this.update; } 点击这个按钮; }; var myClassOBJ=新的MyClass; 单击我这不是指MyClass

var MyClass=函数{ var_this=这个; this.value='hello'; this.update=函数{ 警告此值; //用这个值做一些事情 } this.click=函数{ $“按钮”。单击\u this.update; } 点击这个按钮; }; var myClassOBJ=新的MyClass;
单击“确定这引用了您附加到该范围内事件侦听器的元素?”?为什么不尝试MyClass.update?onclick事件将以单击的事件作为上下文执行,因此您必须再次将处理程序绑定到您的类。我确信这是指您附加到该范围内事件侦听器的元素?为什么不试试MyClass.update?onclick事件将以单击的事件作为上下文执行,因此您必须再次将处理程序绑定到类。
var MyClass = function() {
    var self = this;
    self.value = 'hello';
    self.update = function() {
        console.log(self.value);
        // Do some things with self.value
    };
    $('#button').click(self.update);
};