Ajax中done是什么意思?
done是Ajax中的一个方法,它用于处理成功完成的Ajax请求。当Ajax请求成功返回状态码为200时,done方法会被执行,它接收一个回调函数作为参数,在函数内部可以对返回的数据进行进一步的处理。
下面我们来看一个例子:
$.ajax({ url: "example.php", method: "GET" }).done(function(response) { console.log(response); });
在上面的例子中,我们发起一个GET请求到example.php页面。如果请求成功并返回状态码为200,done方法中的回调函数就会被执行。回调函数中的参数response即为服务器返回的数据,在这里我们将其输出到控制台中。
另一个例子:
$.ajax({ url: "users.php", method: "GET" }).done(function(users) { for (var i = 0; i< users.length; i++) { console.log(users[i].name); } });
在这个例子中,我们请求了一个返回用户列表的接口。当请求成功返回后,done方法中的回调函数会遍历返回的用户数组,并输出每个用户的名字到控制台中。
除了执行回调函数外,done方法还可以返回一个Promise对象。这意味着你可以使用done方法进行链式操作,如下所示:
$.ajax({ url: "data.php", method: "GET" }).done(function(data) { console.log(data); return $.ajax({ url: "other.php", method: "POST", data: {id: data.id} }); }).done(function(response) { console.log(response); });
在这个例子中,我们首先请求了data.php接口。当请求成功后,done方法中的回调函数会被执行,并输出返回的数据。接着,我们再发起一个POST请求到other.php接口,并传递了上一个请求返回的数据id作为参数。当第二个请求成功后,第二个done方法中的回调函数会被执行,并输出返回的响应数据。
总结来说,done方法是在Ajax请求成功后执行的回调函数。它可以用于处理返回的数据,或者进行链式操作。通过在done方法中处理返回的数据,我们可以在请求成功后进行进一步的操作,提供更好的用户体验。