Używam Typeahead.js z implementacji, która wygląda bardzo podobnie do „wielu zbiorów danych” znalezione w examples:Pokazuje łączne wyniki zliczania użyciu Typeahead.js za prefetch
var nbaTeams = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('team'),
queryTokenizer: Bloodhound.tokenizers.whitespace,
prefetch: '../data/nba.json'
});
var nhlTeams = new Bloodhound({
datumTokenizer: Bloodhound.tokenizers.obj.whitespace('team'),
queryTokenizer: Bloodhound.tokenizers.whitespace,
prefetch: '../data/nhl.json'
});
var footer = function (context) {
// calculate total hits here
return "<a href='...'>" + count + "</a>";
}
$('#multiple-datasets .typeahead').typeahead(null, {
name: 'nba-teams',
display: 'team',
source: nbaTeams,
templates: {
header: '<h3 class="league-name">NBA Teams</h3>'
},
limit: 3
},
{
name: 'nhl-teams',
display: 'team',
source: nhlTeams,
templates: {
header: '<h3 class="league-name">NHL Teams</h3>',
footer: footer
},
limit: 3
});
Używam najnowszych wersja Typeahead.js (wersja0.11.1). Próbuję dodać szablon stopki na dole sekcji zespołów NHL, który ma łączną liczbę pasujących wyników. Coś w rodzaju <a href="...">Browse all ### results</a>
. Nie mogę znaleźć nigdzie w dokumentacji, gdzie mogę pobrać liczbę całkowitych trafień z Bloodhound.
Widziałem ludzi robiących to ze zdalnymi źródłami danych, ale moje źródło danych jest na tyle małe, że można je pobrać i zapisać w pamięci podręcznej, więc chciałbym użyć wstępnego pobierania.
Kiedy wpisuję "a", oznacza to "zobacz wszystkie 1 wyniki", ale na ekranie są wyświetlane 3. Dodatkowo istnieje prawdopodobnie ~ 20 wyników, które mają w sobie ... Chcę 20. –
Dla pierwszego zapytania, mówi "zobacz wszystkie 1 wyniki", ponieważ szablon stopki jest dla drugiego zestawu danych, a pozostałe dwa wyniki są od pierwszego zestawu danych. Dla twojego drugiego zapytania, To był [błąd] (https://github.com/twitter/typeahead.js/issues/96), plugin mathches tylko zaczynając od tokes. Jeśli chcesz dopasować dowolną postać, możesz znaleźć rozwiązanie [tutaj] (http://stackoverflow.com/questions/22059933/twitter-typeahead-js-how-to-return-all-matched-elements-within-a String) –
Chcę dopasować dowolny znak w obu zestawach danych, nie tylko ten, do którego dołączona jest stopka. –