1

我是 Ajax 和 Javascript 的新手,我花了很长时间弄清楚为什么这个请求总是失败:

function sellStock(sellData){   
$.ajax({             
    url: '../controller/sell.php',      
    data: sellData,
    success: function(){
        alert("MADE IT");
        //does stuff                            
    }                               
});
}

我能得到的关于失败请求的唯一数据是“错误”。获取有关该问题的更多信息的最佳方式是什么?

我特别困惑,因为这个几乎相同的函数在同一目录中的 php 文件上完美运行:

function autoUpdate(s){
$.ajax({ 
    url: '../controller/quote.php',
    data: {symbol: s}, 
    success: function(data){
        //does stuff             
    }                       
});
}

调用之间存在细微差别(即 autoUpdate() 是从 setInterval() 调用的,而 sellStock() 是由另一个 JS 函数在循环中调用的),但我看不出有任何问题。我相信 sellData 的形式是正确的。我已经访问了应该存在的每个成员,并且为了以防万一,我已经尝试使用具有相同结果的匿名对象。

谁能帮我一把?

4

1 回答 1

4
  1. 下载 fiddler 并运行跟踪,如果您使用的是 IE9+,请按 F12,然后按下“网络”选项卡下的“开始捕获”按钮。
  2. 如果您在那里看到请求,很好,dbl 点击查看详细信息,您可能会在那里找到错误消息。
  3. 或者在 ajax 调用中查找jQuery 错误处理程序,参数将为您提供有关您的请求的更多详细信息。
  4. 如果以上都不起作用,请返回 fiddler,单击composer选项卡尝试手动序列化有效负载sellData并继续调试。

上面的内容应该可以为您提供有关问题所在的线索。

于 2013-06-14T17:13:39.647 回答