jquery无法访问对象内部的属性

时间:2016-09-19 15:32:28

标签: javascript jquery oop

function foo(){
    var a = 1;
    this.b = 2;

    this.c = function(){
        alert(a);
        alert(this.b);

        $('.ei').each(function(){
            alert(a);
            alert(this.b);//undefined <-- i need this to be update to 3
        });
    }

}

var obj = new foo;
obj.b = 3; //update this property before call method
obj.c();

我有一个包含jquery each()的方法,我尝试访问这个对象的属性,但是我得到了未定义的

我需要此属性才能更新

任何人都知道如何使这项工作?

1 个答案:

答案 0 :(得分:0)

你需要将它绑定到函数。

this.c = function(){
    alert(a);
    alert(this.b);

    $('.ei').each(function(){
        alert(a);
        alert(this.b);//undefined <-- i need this to be update to 3
    }.bind(this));
}.bind(this);