我用一个方法在 JavaScript 中定义了一个类:
function MyClass(text) {
this.text = text;
}
MyClass.prototype.showText = function() {
alert(this.text);
}
然后,我使用 jQuery 定义了一个方法,该方法充当单击事件的处理程序:
function MyClass(text) {
this.text = text;
$('#myButton').click(this.button_click);
}
MyClass.prototype.showText = function() {
alert(this.text);
};
MyClass.prototype.button_click = function() {
this.showText();
};
当我单击按钮时,它会说:
对象 #<HTMLInputElement> 没有方法 'showText'
似乎是this
在 jQuery click 事件处理程序中引用 HTML 元素本身,而不是引用MyClass
对象的实例。
我该如何解决这种情况?
可用的 jsFiddle:http: //jsfiddle.net/wLH8J/