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

时间:2011-06-02 16:18:02

标签: jquery ajax

我试图设置一个计数器来我的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});

2 个答案:

答案 0 :(得分:1)

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

此处数据是响应或输出。 你可以检查一下

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

答案 1 :(得分:0)

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

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