2013-09-01 28 views
3

typeahead.js有prefetch選項用於在需要之前獲取基準面。有沒有辦法在打開下拉菜單之前過濾typeahead.js選項?

$('input').typeahead({ 
    "prefetch": "/selections_url" 
}); 

我想根據文檔中的某些信息過濾選擇。當使用filter選項時,prefetch也可以過濾初始基準。但是這隻能過濾最初的抓取。我需要的確實是prefetch,但是有一個鉤子可以在顯示之前過濾出一些數據。

typeahead.js有這個事件typeahead:opened但這並沒有參數(不能處理基準)和基準在下拉列表中(所以我不能寫一段代碼,以消除一些渲染基準)

呈現前觸發

任何方式來做到這一點?

PS:我還在typeahead.js項目中添加了這個issue

回答

2

我想你可以使用remote(做一個AJAX調用),並將你的文檔數據傳遞給服務器端,並讓服務器端填充。

一個黑客立即暗示:

  1. 使用prefetch,並在其filter商店的數據參考。 filter()本身返回一個空集。

  2. 有一個空的遠程URL(或指向一個什麼也不做端點的URL),並在filter,讀你存儲在prefetchfilter無論你想與您的文檔中的數據,執行數據,並返回其中的任何子集。

相關問題