Я хочу получить все элементы из списка SharePoint. Список содержит более 5000 элементов, поэтому необходим рекурсивный ajax-вызов REST-API. Я могу вызвать все данные в массив, но код, вызывающий функции Ajax, похоже, ничего не делает в .then(), см. мой код ниже. Кажется, я упускаю очевидное.
var url = _spPageContextInfo.webServerRelativeUrl + "/_api/web/lists/getbytitle('LISTNAME')/items?$select=ID,Title,TEST,LINK,Modified,Editor/Title&$top=5000&$expand=Editor/Id";
function getAllItemsFromList(url) {
return new Promise((resolve, reject) => {
$.ajax({
url: url,
method: "GET",
dataType: "json",
headers: {
"Accept": "application/json; odata=verbose"
},
}).done(function (data) {
if (data.d.__next) {
console.log("true: ", data.d.results);
url = data.d.__next;
data.d.results.forEach(element => {
all_items_from_list.push(element);
});
getAllItemsFromList(url);
}
else {
console.log("false: ", data.d.results);
data.d.results.forEach(element => {
all_items_from_list.push(element);
});
//prints all the 7345 Items into the console
console.log("false, all_items_from_list: ", all_items_from_list);
resolve("yay");
}
}).fail(function () {
console.log("this went horribly wrong!");
reject("ERROR!");
});
});
};
var all_items_from_list = [];
getAllItemsFromList(url).then(
function (value) { console.log("I'm here and got following data: ", all_items_from_list) },
function (error) { /* code if some error */ }
);
Подробнее здесь: https://stackoverflow.com/questions/791 ... epoint-lis
Рекурсивный вызов AJAX JQuery и SharePoint для получения всех элементов из списка SharePoint. ⇐ Jquery
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Добавьте элемент списка в Sharepoint с помощью Sharepoint Online REST API
Anonymous » » в форуме Python - 0 Ответы
- 26 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Добавьте элемент списка в Sharepoint с помощью Sharepoint Online REST API
Anonymous » » в форуме Python - 0 Ответы
- 24 Просмотры
-
Последнее сообщение Anonymous
-