如何在jQuery中正确取消(中止)AJAX请求?
大家好!我刚开始学习AJAX和jQuery,遇到了一个问题。我的页面上有几个按钮,点击时会向服务器发送AJAX请求。有时用户快速点击不同的按钮,导致旧请求尚未完成,新请求就已经发出。
以下是我的简化代码:
```javascript
$('.load-data').click(function() {
var id = $(this).data('id');
$.ajax({
url: '/api/data/' + id,
method: 'GET',
success: function(response) {
$('#content').html(response);
},
error: function(xhr, status, error) {
console.log('错误: ' + error);
}
});
});
```
问题在于,如果快速点击按钮1、2和3,div#content中可能会先显示按钮1的响应,然后显示按钮2的响应——即数据会混淆。我希望在每次新点击时取消旧请求,只有最新的响应被放入容器中。
我尝试过修