如何使用Javascript对象的JQuery回调函数

时间:2011-07-06 16:24:47

标签: javascript jquery oop jquery-callback

我有一个Javascript对象如下:

function extraFields(id) {
    this.numActiveFields = 0;

    ...

    this.addRow = function(quoteClass, rowClass) {
        var remButton = $("<span></span>")
        .addClass(rowClass)
        .addClass(quoteClass)
        .click(function() {
            //here I want to refer to the object's variable, but instead refer
            //to the JQuery object
            this.numActiveFields++;
        });
    }

    ...
}

我想从回调函数内部更改对象的变量。我该怎么办?我应该改变声明对象的方式吗?

1 个答案:

答案 0 :(得分:1)

当您处于回调函数中时,“this”是您创建的“remButton”。只需在回调之前将“this”保存在变量中,然后再使用它。

要获得更好的解释,请查看mplungjan建议的链接: Reference to an object from a callback function in jQuery