У меня есть окно с предложением, где оно отлично работает, когда есть привязка источника на стороне клиента (здесь, например: availableTags)
$(function () {
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
"COBOL",
"ColdFusion",
"Erlang",
"Fortran",
"Groovy",
"Haskell",
"Java",
"JavaScript",
"Lisp",
"Perl",
"PHP",
"Python",
"Ruby",
"Scala",
"Scheme"];
$("#tags").autocomplete({
source: availableTags
});
});
http://jsfiddle.net/fwaq3dkz/28/
Но когда я меняю источник на стороне сервера, он по-прежнему перечисляет предложенные значения, но не фильтрует значения, которые я ввел в поле для предложений
$("#tags").autocomplete({
source: function (request, response) {
$.getJSON('/User/GetUsersJSONAsync', function (data) {
var users = [];
for (let key in data) {
users.push(data[key].userPrincipalName);
}
response(users);
});
},
});
http://jsfiddle.net/fwaq3dkz/31/
PS: приведенная выше скрипка не даст никакого ответа JSON, потому что она касается контроллера MVC в моем коде, который я не могу использовать в скрипте, это только для ознакомительных целей.
Означает, что когда я ввожу "A", в нем перечисляются все теги с "A" и "a" в первом случае, который является источником на стороне клиента.
Но он не будет фильтровать во втором случае, являющемся источником на стороне сервера, он будет перечислять все.