Avatar ·

如何在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的响应——即数据会混淆。我希望在每次新点击时取消旧请求,只有最新的响应被放入容器中。 我尝试过修