возможно проблема в источнике данных
Вы вызываете пользователя 1 .... сервер возвращает 1
Вы называете пользователя 2 .... сервер возвращает 1
Вы звоните пользователю 3 .... сервер возвращает 2
Вы звоните пользователю 4 .... сервер возвращает 2
Вы звоните пользователю 5 .... сервер возвращаетa 3
Вы вызываете пользователя 6 .... сервер возвращает 3
curent_user = 1;
$(document).ready(function() {
http: $("#pictures_tag_input").select2({
placeholder: "Search for options",
ajax: {
url: "https://jsonplaceholder.typicode.com/users/1/todos",
dataType: "json",
global: false,
cache: false,
minimumInputLength: 2,
data: function(params) {
console.log("params",params || 1);
return {
q: params.term, // search term
_page: curent_user,
_limit: 10 // page size
};
},
processResults: function(data, params) {
curent_user += 2;
var datx = getNestedChildren(data);
console.log("data: ", data);
return {
results: datx,
pagination: {
more: true
}
};
} //end of process results
} // end of ajax
});
function getNestedChildren(list) {
var roots = [];
for (i = 0; i < list.length; i += 1) {
node = list[i];
if (roots.length === 0) {
var obj = {
text: "User " + node.userId,
children: [{ id: node.id, text: node.title }]
};
roots.push(obj);
} else {
var obj = {
text: "User " + node.userId,
children: [{ id: node.id, text: node.title }]
};
var rootArray = $.map(roots, function(val, i) {
var vl = "User " + node.userId;
if (val.text === vl) return val;
else return undefined;
});
if (rootArray.length > 0) {
var obj1 = {
id: node.id,
text: node.title
};
rootArray[0].children.push(obj1);
} else {
roots.push(obj);
}
}
}
return roots;
}
});
, поэтому, если вы пропустите один шаг
Вы позвоните пользователю 1 ....сервер возвращает 1
вы вызываете пользователя 3 .... сервер возвращает 2
вы вызываете пользователя 5 .... сервер возвращает 3