可能重复:
$.ajax context option
我有一些看起来像这样的代码:
$.post(self.baseUrl + 'api/method',
{param1: data},
function (response) {
// Do something
});
我想将自我对象的引用传递给回调,我想这会是这样的:
$.post(self.baseUrl + 'api/method',
{param1: data},
function (response, self) {
// Do something
});
但是,它不能像这样工作,jQuery文档没有显示一种方法可以使这成为可能,粗略的谷歌搜索没有发现任何东西。这可能,我该怎么办?
答案 0 :(得分:5)
如果您使用$.ajax
方法,则可以指定上下文:
$.ajax({
type: "post",
context: self,
data: {param1: data},
success: function (response) {
console.log(this); // now 'this' refers to self
}
});
答案 1 :(得分:0)
你为什么要那样做?
您可以轻松使用闭包:
var param1 = data;
$.post(self.baseUrl + 'api/method', function (data) {
// access param1 here
});