ajax花了太多时间发送数据。但是返回的数据很快就疯了

时间:2013-06-22 10:16:51

标签: javascript jquery

这是jquery部分。

$.ajax({
    type: "POST",
    url:  "index.php",
    data: { w1: js.who, w2: $(this).parent().attr("id") },
    dataType: "json",
    success: function(data) {
        console.log(data);
        if(data)
        {
            $.each(data.a, function(){
                $("#chat").append("<li>"+this+"</li>");
            });
        }
    },
    error: function(xhr, textStatus, error) {
        console.log(xhr.statusText);
        console.log(textStatus);
        console.log(error);
    }
});

我正在尝试将jquery对象和id一起发送到同一个php文件,但发送数据的时间太长。问题可能是什么?它从未发生过......

1 个答案:

答案 0 :(得分:0)

代码看起来干净简单,所以问题必须出在你没有发布的内容上。

你说它是发送(不接收)部分需要很长时间,所以它必须是以下之一:

  1. js.who是否包含对某个巨大对象的引用?在这种情况下,json编码可能需要很长时间。尝试删除它,看它是否修复它。

  2. 您只发送一次(它不会发生在循环或任何事情中吗?)

  3. 您是如何测试“数据快速恢复”的?您是通过其他方式发送另一个POST请求,还是只是将字符串传递给浏览器?如果是后者,则index.php在GET和POST上的行为可能不同。测试一下。

  4. “this”指的是什么(与data:...一致)?确保它是一个dom元素。