У меня есть REST API в формате jSON для извлечения записи.
Моя логика
- Запись выборки API REST (формат jSON)
- Я получаю первые 6 записей, в то время как я получаю записи, я получу еще один узел jSON, который будет иметь URL-адрес пересылки. Я назначаю этот URL для кнопки HTML5 атрибуту data-url.
- Затем я получу этот URL-адрес по нажатию кнопки. Я использую этот URL для повторения пункта 1-3. Я буду повторять описанную выше процедуру, пока URL-адрес подкачки не станет неопределенным
Мой код
$.when(processList(url)).done(function () { });
function processList(nextUrl) {
var dfd = new $.Deferred();
if (nextUrl == undefined) {
$("#btnViewMore").hide();
dfd.resolve();
return;
}
var news = ""
getData(nextUrl).done(function (data) {
var items = data.d.results;
var next = data.d.__next;
$("#btnViewMore").removeAttr("data-url").attr("data-url", next).show();
dfd.resolve();
// $.when(processList(next)).done(function () {
// dfd.resolve();
// });
$.each(items, function (i, item) {
// display record
})
$("#news").append(news);
})
return dfd.promise();
}
Нажатие кнопки
$("#btnViewMore").click(function () {
var _url = $(this).data('url')
$.when(processList(_url)).done(function () { });
})
Моя кнопка HTML5
<button type="button" name="" id="btnViewMore" class="btn btn-primary btn-lg btn-block" style="display:none">View More
<i class="fa fa-arrow-circle-down" aria-hidden="true"></i>
</button>
Теперь моя проблема, если я запускаю полную выборку записей с $ .when внутри getData, это приведет к правильному выводу всех записей. Но когда я назначаю URL кнопке, она начинает повторять одну и ту же запись снова и снова. Я обнаружил, что URL не меняется с новым URL из-за того, что он повторяет данные
Пожалуйста, дайте мне знать, как я могу решить эту проблему