javascript - 完成后获取 jQuery AJAX 请求的参数

标签 javascript jquery ajax

如何查明在(异步)jQuery AJAX 请求完成后传递了哪些参数?

基本上,我正在触发一堆 AJAX 请求,并以不同的 id 作为参数传递,并在每个请求完成时向用户显示结果。现在,如果请求成功,我可以将 id 传回请求结果中。但是,如果请求失败,我不知道哪个请求失败,即该请求的 id 是什么。

示例(javascript/jQuery):

for(var i=0; i < 10; i++ ) {

    $.ajax({
        type: "GET",
        url: "get-results.php", 
        data: { 'id': i },
        success: function(data, textStatus, xmlReq) {

            data = $.parseJSON(data);
            $("#result" + data.id).html(data.result);

        },
        error: function(xmlReq, textStatus, errorThrown) {

            var id= ???;
            $("#result" + id).html('error bla bla');

        }
   });
}

最佳答案

$.ajaxError为您提供通过 AJAX 调用发送的数据。

.ajaxError(处理程序(事件, XMLHttpRequest, ajaxOptions, throwedError))

ajaxOptions 对象包含可以通过 $.ajax 设置的所有选项

因此,不要使用 $.ajax 中的 error: 选项,而是使用 $.ajaxError

$(document).ajaxError(function(event, XMLHttpRequest, ajaxOptions, thrownError){
  if(ajaxOptions.url.indexOf('get-results.php') != -1){
    var data = ajaxOptions.data; // this is a string: 'id=1&param2=4'
                                 // to get the ID, you need to parse this
  }
});

关于javascript - 完成后获取 jQuery AJAX 请求的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4692099/

相关文章:

jquery - html/jquery组合输入类型: text within radio

jquery - 多个自动完成调用 - jQuery

php - 这个 JavaScript 函数到底是做什么的?我如何捕获 select 中的值并将其插入回数据库?

javascript - Jquery 仅附加到第一类元素

javascript - 这个 Javascript 数组的正确顺序是什么?

javascript - 如何使用 D3.JS 中的转换更新 Y 域?

c# - 有没有办法捕获 AJAX-web 服务中的所有错误?

javascript - 根据 URL 值将检查设置为 true

jquery - 火狐漏洞 : Footer wrapping around main content

ajax - 如何为ajax删除Rails 3创建fancybox确认框