有没有办法在打开下拉列表之前过滤typeahead.js的选择

Is there a way to filter the typeahead.js selections right before opening the dropdown?

本文关键字:过滤 typeahead js 选择 下拉列表 有没有      更新时间:2023-09-26

typeahead.js具有prefetch选项,可在需要基准之前获取基准。

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

我想要的是根据文档中的一些信息筛选所选内容。使用filter选项时,prefetch还可以过滤初始基准。但这只会过滤初始获取。我需要的确实是prefetch,但有一个钩子可以在显示之前过滤掉一些数据。

typeahead.js有这个事件typeahead:opened,但它没有参数(无法处理基准),并且在下拉列表中呈现基准之前被触发(所以我不能写一段代码来删除一些呈现的基准)

有办法做到这一点吗?

附言:我也在typeahead.js项目中添加了这个问题。

我想您可以使用remote(进行AJAX调用)并将文档数据传递到服务器端,然后让服务器端进行填充。

黑客攻击立即被暗示:

  1. 使用prefetch,并在其filter中存储对数据的引用。让filter()本身返回一个空集。

  2. 有一个空的远程URL(或指向一个什么都不做的端点的URL),在filter中,读取存储在prefetchfilter中的数据,对文档数据执行任何操作,并返回其中的任何子集。