如何在jquery回调函数中获取当前对象引用?

时间:2018-01-08 09:18:54

标签: javascript jquery

我有一个名为aObject的javascript对象,其中的一个fucntion被用作这样的jQuery回调函数:

var aObject = {
    aVariable : 'whatever value',
    test : function(e) {
        // Trying to access property. But doesn't work as expected since I am getting the DOM element i.e form, not the aObject reference
        var temp = this.aVariable;
    }
}

$('document').ready(function(){
  $('#some-html-form').submit(aObject.test);
});

当我在aObject中调用测试方法时,这指的是已提交的表单元素。我想从test回调函数访问当前对象?

我按照this回答中的描述尝试了以下代码,但它对我不起作用

$(document).ready(function() {
   $('#add_api_form').submit(api_cahce.handle_add_form_submit.bind(this));
});

1 个答案:

答案 0 :(得分:1)

aObject绑定,然后您可以访问该变量。

var aObject = {
    aVariable : 'whatever value',
    test : function(e) {
        var temp = this.aVariable;
    }
}

$('document').ready(function(){
  $('#some-html-form').submit(aObject.test.bind(aObject));
});