我学习jQuery,但不了解这种情况:
在调试模式下运行此代码时,所有功能都可以正常运行。但是,正常运行此代码时,不会启动回调功能。为什么?
在非调试模式下,我有->“开始”->“结束10”
浏览器:谷歌浏览器。
var nrPost = 10;
$("#buttnX").click(function() {
alert("Start");
GoPosts();
End();
});
function End() {
alert('End ' + nrPost);
};
function GoPosts() {
$.ajaxSetup({async:false});
var url = "http://......";
var data = { ... };
$.post(url, data, Callback, 'json');
};
function Callback(response) {
if (response.error) {
return;
}
nrPost--;
if (nrPost > 0) [
GoPosts();
} else {
return;
}
};
最佳答案
您多了一个};在您的代码中。我对它做了一些改动,以使用jQuery并将其放在jsfiddle上。
http://jsfiddle.net/rH8RV/19/
它应该发出警告:“开始”,然后“结束10”,根据您编写代码的方式,这是正确的。您还期待其他吗?
关于javascript - jQuery $ .post()以递归方式(循环),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5641080/