我有一个ajax调用,并且在成功时,我将收到的值增加1. getMessage()只应在收到时输入< 10是真的。但是,函数外部的返回值始终为0,从而导致无限循环。
任何人都有任何建议,以便在功能之外可以看到更新后的收到价值吗?
{{1}}
答案 0 :(得分:1)
我强烈建议您阅读重复的帖子。但是,这是尝试使用异步方法的一个可能的解决方案。
var received = 0;
//received is < 10, start loop
getMessage();
function getMessage() {
$.ajax({
url: '/Home/getData/',
type: "GET",
success: function(result) {
received++; //increment
if (received < 10) {
console.log(received);
getMessage();
}
}
});
}