Можно ли вставить в пост ajax какую-то измененную переменную из собственных данных успеха?
При загрузке страницы сначала запускается ajax и показывает некоторые записи из mysql, затем я беру идентификатор последней записи и сохраняю его в latestID
, в следующую секунду ajax запускает и извлекает только записи из этого идентификатора вперед, а затем сохраняет lastId и запускает еще раз.
$.ajax({
type: 'POST',
url: '{{ ... }}',
dataType: 'json',
'success': function (data) {
callback(data);
}
});
function callback(response) {
var idList = [];
var printer_category = response.printer.productcategory_id;
var printer_timer = parseInt(response.printer.timer);
var printer_storeid = response.printer.store_id;
var printer_physicalPrint = parseInt(response.printer.physical_print);
var printer_id = parseInt(response.printer.id);
var data = response.transactions;
console.log(response);
$.each(data, function (i, dataitem) {
console.log(dataitem);
idList.push(dataitem.id);
});
var latestID = Math.max.apply(Math, idList);
function getData() {
$.ajax({
type: 'POST',
url: '{{ ... }}',
dataType: 'json',
data: {latestID: latestID, printer_timer: printer_timer, printer_storeid: printer_storeid, printer_category: printer_category},
success: function (data) {
console.log(data);
data = data.transactions;
if (data != 0) {
var idList = [];
$.each(data, function (i, dataitem) {
console.log(dataitem);
idList.push(dataitem.id);
});
var latestID = Math.max.apply(Math, idList);
console.log(latestID);
}
}
});
}
getData();
setInterval(function () {
getData();
}, 10000);
}
});
Если я console.log(latestID)
внутри success: function
, он показывает правильное значение, но ajax отправляет data: {latestID: latestID}
, значение 1
на каждом setInterval
запуске.
* РЕДАКТИРОВАТЬ: добавлен весь код.