无法在$ .post函数中设置变量

我试图设置一个计数器到我的jquery ajax post函数返回。 我想要做的是确定后端是否返回任何内容。 所以我试着计算每个函数运行的次数,但是在post函数完成之后,i被设置回零。 但在中间,我运作正常。 为什么会这样? 如何检查响应是否为空?

i=0; $.post(url, data, function(resp) { $('form').find('.errors').remove(); $.each(resp, function(index, value) { $("#" + index).parent().append(getErrorHtml(value, index)); i++; c.log(i); }); }, 'json'); c.log(i); 

谢谢!

可以使Ajax请求同步帮助吗? $.ajaxSetup({async:false});

 $.post("test.php", { name: "John", time: "2pm" }, function(data) { alert("Data Loaded: " + data); }); 

这里的数据是响应或输出 。 你可以检查一下

http://api.jquery.com/jQuery.post/

这里的答案是,回调不是与其他函数一致启动的。 因此,如果在函数之外定义了某些东西,并且在函数中对它进行了某些操作,并且在函数之后,则回显(不确定)这些操作是以特定顺序发生的。

更接近我的问题,我在回调执行之前尝试c.log()