Я пытаюсь реализовать typeahead, источником которого является API, ожидающий запроса GET с телом данных, а не данных, закодированных по URL-адресу. Я пробовал несколько разных вещей в объекте «подготовить», но не могу заставить его закодировать параметры URL-адреса. Возможно ли, чтобы typeahead или jquery вообще не делали этого? У меня есть ощущение, что jquery, возможно, просто не позволяет вам это делать, поскольку это будет считаться «плохой практикой», но изменение API на самом деле не вариант! Вот мой код:
$(document).ready(function(){
var people = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'),
queryTokenizer: Bloodhound.tokenizers.whitespace,
remote: {
url: 'apiUrl',
prepare: function (query, settings) {
settings.type = "GET";
settings.contentType = "application/json";
settings.DataType = "json";
settings.processData = false;
settings.data = JSON.stringify({"search":"people","query":query});
return settings;
}
}
});
$('.typeahead').typeahead(null, {
source: people
});
})
Я использую jquery 1.11.3 и typeahead.js 0.11.1.
Спасибо!
D
вsettings.DataType
должно быть в нижнем регистреd
settings.dataType = "json";
? - person guest271314   schedule 16.11.2015substringMatcher
twitter.github.io/ typeahead.js/examples/#file-the-basics-js, см. сообщение - person guest271314   schedule 17.11.2015