Javascript 让typeahead.js在查找建议时忽略括号
我正在利用这些建议。除了一个问题外,它运行良好。我的建议有括号,如下所示:Javascript 让typeahead.js在查找建议时忽略括号,javascript,jquery,typeahead.js,typeahead,Javascript,Jquery,Typeahead.js,Typeahead,我正在利用这些建议。除了一个问题外,它运行良好。我的建议有括号,如下所示: "Elizabeth (Liz)" "Robert (Bob)" "Michael (Mike)" 只匹配单词的开头,因此如果用户键入“Liz”,它将不会建议第一项。如果您键入“(Liz”),它将匹配。但是用户应该能够开始键入名称或昵称以查看匹配的建议 如何让typeahead.js忽略括号并查找两个单词中的匹配项 JSFIDLE上的工作示例: 重要提示:我不希望typeahead.js在字符串中的任何位置查找匹配项。
"Elizabeth (Liz)"
"Robert (Bob)"
"Michael (Mike)"
只匹配单词的开头,因此如果用户键入“Liz”,它将不会建议第一项。如果您键入“(Liz”),它将匹配。但是用户应该能够开始键入名称或昵称以查看匹配的建议
如何让typeahead.js忽略括号并查找两个单词中的匹配项
JSFIDLE上的工作示例:
重要提示:我不希望typeahead.js在字符串中的任何位置查找匹配项。我知道这会解决问题,但当有成千上万的建议时,这将不会有帮助。例如,键入“Beth”建议“Bethany”,而不是“ElizaBeth”。我需要保留此功能。除括号外,建议应仅与每个单词的开头匹配
感谢您的帮助。如果您将datumTokenizer更改为:
预测将以相同的方式在单词的开头执行,但不包括符号,而不仅仅是分割空白
然后你会得到Eli和Liz对Elizabeth(Liz)的建议。你可以使用
警犬.tokenizers.nonword
标记器作为datumTokenizer
在内部,它使用此表达式split(/\W+/)
,该表达式将按不属于单词的任何字符分割stings。例如,符号和空格
这里有一个js小提琴的链接
(可选)您可能希望实现自己的标记器,以空格和括号分隔。工作起来很有魅力。我正在查阅typeahead文档,但本应查看《猎犬》。谢谢您的帮助!关于此问题的任何帮助关于此问题的任何帮助
datumTokenizer: Bloodhound.tokenizers.nonword