更新:问题发生在其他地方。我做了3个具有相同属性的调用。因此,如果您在$ .ajax
之前遇到相同的问题检查属性值
我有 jQuery ajax调用:
function foo(someVar){
$.ajax({
dataType: "json",
url: 'http://some.json?callback=?',
success: function(data){
alert(someVar);
}
});
}
如果要多次通话:
getPriceByRoute('a');
getPriceByRoute('b');
getPriceByRoute('c');
将通过c
获得3个提醒。
如何将someVar
发送到成功功能?
试图做:
function foo(someVar){
$.ajax({
dataType: "json",
//
myVars:{someVar:someVar},
//
url: 'http://some.json?callback=?',
success: function(data){
alert(this.myVars.someVar);
}
});
}
但结果相同。
在上一种情况下,我可以在上次加载后发送每个下一个请求,但希望还有其他好的解决方案。
答案 0 :(得分:2)
使用context
$.ajax
选项
$.ajax({
...
context: {someVar:someVar}, // sets the value of "this" inside the success function
...
success: function(data){
// "this" is {someVar:someVar}, as set via the context option
alert(this.someVar);
}
});