jquery ajax success中的参数

parameters in jquery ajax success

本文关键字:参数 success ajax jquery      更新时间:2023-09-26

我试图找出我可以传递给jQuery ajax调用的参数。

我习惯的是写这样的东西:

$.ajax({
....
success: function(response) {
// put callback here
}
....
});

所以这是我的问题:

显然,我在成功函数中输入的"响应"变量只是收回服务器从 ajax 调用发回的任何内容。有没有可能的方法将多个变量发回?像这样:

...
success: function(response,httpStatus,whateverElse) {
}
...

或者,有没有其他方法可以获取 http 响应代码?

感谢谁能回答这个问题!

你可以在success'第三个参数或complete的第一个参数上获取responsestatus code,如下所示:

$.ajax({
  success: function(data, textStatus, xhr) {
    console.log(xhr.status);
  },
  complete: function(xhr, textStatus) {
    console.log(xhr.status);
  } 
});
此外,

@Kokizzu您还可以查看 jQuery API 站点,查看哪些参数传递给其他函数 http://api.jquery.com/jquery.ajax/。

另外,当没有可用的文档时,我发现可以方便地计算出正在传递哪些参数的方法是:

success: function() {
 console.log(arguments);
}

这会将调用该函数时传递给该函数的所有参数记录到控制台。

你也可以让服务器在php中发回json json_encode

菲律宾语:

$array['status'] = 0;
$array['foo'] = 'bar';
json_encode($array);

阿贾克斯:

$.ajax({
    ...
    success: function (data) {
        console.log(data);
    }
});

那么显然你可以让你的回调处理这些变量。

$.ajax({
  success: function(data, status, xhttp) {
    console.log(status + ": " + data);
  },
  error: function(data, status, xhttp) {
    console.log(status + ": " + data);
  }
});