我遇到了ajax调用问题。它的工作正常除了一件事,当我尝试使用相同选项获取数据多次返回新响应时,仍然返回上一个响应的数据。
我认为有些东西我错过了。
$(document).ready(function () {
$('select').on('change', function () {
var $optionValue = $('#loading-thing-post option:selected').text();
var $categoryID = $('#loading-thing-post').val();
$.ajax({
dataType: 'json',
url: 'http://localhost/visitingcy/public/management/getThingPost/' + $categoryID
}).done(function (data) {
if (!jQuery.isEmptyObject(data)) {
$('#thing-table').show();
$.each(data, function (index, value) {
index += 1;
var result = $('<tr>' +
'<td>' + index + '</td>' +
'<td>' + value.title + '</td>' +
'<td>' + value.category_name + '</td>' +
'</tr>');
$('tbody#thing-content').append(result);
})
} else {
$('#thing-table').hide();
}
});
});
});
答案 0 :(得分:0)
在每个循环之前删除#thing-content的内容
$('tbody#thing-content').empty();
$('#thing-table').show();
$.each(data, function (index, value) {
index += 1;
var result = $('<tr>' +
'<td>' + index + '</td>' +
'<td>' + value.title + '</td>' +
'<td>' + value.category_name + '</td>' +
'</tr>');
$('tbody#thing-content').append(result);
})
答案 1 :(得分:0)
您需要使用signed
方法来阻止旧的ajax结果:
abort