-4

我是使用 JQuery 的新手,这行代码有问题。

function getById(id, callback) 
{
  return  $.get(url, {}, callback);
}

当我查看 .get 返回的内容时,它不是我认为应该返回的 xml 节点或 JSON。相反,我得到一个带有方法和原型集合的对象。它也有一个就绪状态。所以它没有返回未定义但也没有返回我所期望的。可能是什么问题?

我已经尝试将 get 分配给一个变量,但没有做任何事情我也尝试使用回调函数,但我真的不明白如何使用它来将从 get 返回的数据分配给一个变量。

4

3 回答 3

1

这些$.ajax()函数返回一个jqXHR对象。从 ajax 调用返回的数据将传递给您的回调,或者传递给对象的done回调jqXHR

我建议阅读学习网站的$.ajax()文档ajax 类别

于 2013-11-01T13:44:47.143 回答
0

它返回XMLHttpRequest。由于 AJAX 是异步的,您不能只返回$.get方法。

所以你需要使用你的回调方法:

$.get(url, {}, function( data ) {
    console.log( 'data' );
});
于 2013-11-01T13:44:43.957 回答
0

这称为承诺

它允许您使用异步操作的最终结果。
响应到达时调用该then()方法并传递回调以运行代码。
这将返回该代码结果的新承诺。

于 2013-11-01T13:44:34.830 回答