gpt4 book ai didi

javascript - 使用 typeahead 和 bloodhound 显示点击建议的完整列表

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:04:36 25 4
gpt4 key购买 nike

我将 Typeahead.js 与 bloodhound 建议引擎一起使用,并希望在用户单击搜索框时立即显示列表。

我发现这个 stackoverflow 问题 (Twitter TypeAhead show all results programmatically) 和我一样,答案指向一个 jsfiddle 解决问题:http://jsfiddle.net/5xxYq/

很好。

但是,它似乎只有在不使用 bloodhound 作为 typeahead 的来源时才有效。

例如我 fork 了他们的工作示例并将 typeahead 源切换为使用 bloodhound:http://jsfiddle.net/5xxYq/31/ .建议引擎工作正常(当我键入 jo 时,列表出现),但使建议在点击时出现的小技巧似乎不再起作用。

关于如何使用 bloodhound 使建议列表出现在点击上有什么想法吗?

谢谢!

最佳答案

如果您将此解决方案与 bloudhound 结合使用,则还需要更改 bloodhound.js 或 bundle.js。

在 typeahead.bundle.js 或 bloodhound.js 中添加查找此代码(第 450 行)

return matches ? _.map(unique(matches), function(id) {
return that.datums[id];
}) : [];

添加此检查以在 token 输入为空时返回所有建议:

if (tokens == '') return that.datums;

它现在看起来像:

if (tokens == '') return that.datums;
return matches ? _.map(unique(matches), function(id) {
return that.datums[id];
}) : [];

我已经在你的 fiddle 中测试过了,它有效。

关于javascript - 使用 typeahead 和 bloodhound 显示点击建议的完整列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27138123/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com