Я использую twitter typeahead.js, и я хотел бы отфильтровать результаты автозапуска с помощью recipe_type. Когда recipe_type 1, то предложить мне первые три варианта еще, если recipe_type является 2, то мне предложить пять других вариантов ...Как заполнить опции autosuggest с помощью typeahead.js
Мой массив JSON выглядит следующим образом:
[
{ "recipe_type": "1", "value": 1 , "text": "Čebula"},
{ "recipe_type": "1", "value": 2 , "text": "Paradižnik"},
{ "recipe_type": "1", "value": 3 , "text": "Juha"},
{ "recipe_type": "2", "value": 4 , "text": "Česen"},
{ "recipe_type": "2", "value": 5 , "text": "Grah"},
{ "recipe_type": "2", "value": 6 , "text": "Sol"},
{ "recipe_type": "2", "value": 7 , "text": "Poper"},
{ "recipe_type": "2", "value": 8 , "text": "Ješprenj"},
]
Мой поисковое код:
var elt = $('#search_input');
elt.tagsinput({
itemValue: 'value',
itemText: 'text',
freeInput: false
});
elt.tagsinput('input').typeahead({
valueKey: 'text',
//prefetch: 'assets/js/cities.json',
prefetch :
{
url: 'assets/js/file.json',
matcher: function (item) {
return item.recipe_type == '1'
}
},
/*template: '<p>{{text}}</p>',*/
engine: Hogan,
matcher: function(item) {
return item.recipe_type == '1'
}
}).bind('typeahead:selected', $.proxy(function (obj, datum) {
this.tagsinput('add', datum);
this.tagsinput('input').typeahead('setQuery', '');
}, elt));
см. Мой ответ, я думаю, что мой вопрос был неясным. В моем ответе вы увидите, что я хочу ... – Gasper
Ваш ответ на самом деле не делает более ясным то, что вы пытаетесь сделать ... – Dhaulagiri
hm, после того как я выбрал другой recipe_type (1,2,3,4, 5 ...) Я хочу, чтобы мой тип подсказывал мне подходящие результаты. Пример: если пользователь выберет recipe_type 1 в раскрывающемся меню, укажите значения Čebula, Paradižnik, Juha, если пользователь выберет recipe_type 2, должны быть значения Česen, Grah, Sol, Poper, Ješprenj. Понимаю? – Gasper