bootstrap 3 的上下文特定预输入
Context-specific typeahead with bootstrap 3
我正在使用 Bass Jobsen 的 Bootstrap 3 Typeahead, but for a non-standard use-case. I have a text input field where I expect full sentences and would like to help my users create them. I've used the matcher and updater functions suggested in this answer 将建议的词附加到句子的末尾。
我的问题是定义特定于上下文的自动完成,这样如果我希望我的用户输入的一般句子是这样的,"I see the table in front of the chair."我可以根据什么类型过滤可能的建议话已经用过了。例如,永远不要在 "table".
之后建议 "see"
我计划在更改时检查输入框,然后根据输入框中的当前文本重新加载源数据以进行预输入。但是,是否有比动态重新加载 JSON 源更优雅的解决方案?有没有办法让我一次加载它,然后让匹配器只应用于数据的一个子集?
'source' 选项接受一个函数。在那里,您可以以任何您想要的方式动态构建可能的项目(句子):通过对服务器的 API 调用或使用您之前加载的数据,或者只是您在初始页面加载时加载的数据。当前查询是第一个参数。您可以 return 任意数量的句子。您还可以提供排序器回调来对它们进行排序。
我不知道你想如何根据查询创建可能的句子,但如果它来自概率模型,你想研究马尔可夫模型。
我正在使用 Bass Jobsen 的 Bootstrap 3 Typeahead, but for a non-standard use-case. I have a text input field where I expect full sentences and would like to help my users create them. I've used the matcher and updater functions suggested in this answer 将建议的词附加到句子的末尾。
我的问题是定义特定于上下文的自动完成,这样如果我希望我的用户输入的一般句子是这样的,"I see the table in front of the chair."我可以根据什么类型过滤可能的建议话已经用过了。例如,永远不要在 "table".
之后建议 "see"我计划在更改时检查输入框,然后根据输入框中的当前文本重新加载源数据以进行预输入。但是,是否有比动态重新加载 JSON 源更优雅的解决方案?有没有办法让我一次加载它,然后让匹配器只应用于数据的一个子集?
'source' 选项接受一个函数。在那里,您可以以任何您想要的方式动态构建可能的项目(句子):通过对服务器的 API 调用或使用您之前加载的数据,或者只是您在初始页面加载时加载的数据。当前查询是第一个参数。您可以 return 任意数量的句子。您还可以提供排序器回调来对它们进行排序。
我不知道你想如何根据查询创建可能的句子,但如果它来自概率模型,你想研究马尔可夫模型。