我需要在我的网络应用程序中使用类似于Gmail在输入收件人地址时删除建议的功能,或者在输入问题撰写的标签时使用Stack Overflow的下拉列表。
在Gmail中,“收件人:”地址有一个文本字段。开始输入后,会出现一个包含建议的下拉列表。如果输入分号或逗号,则可以输入另一个地址。同样,一旦您开始输入此地址,就会出现一个带有建议的下拉列表。
建议是地址簿的子集,其中包含您输入的文字。 (例如,如果您键入“jo”,则“ Jo hn”和“Foo jo e”将显示为建议,但“XYZ”不会。)匹配的部分这个词以粗体突出显示。
如果按“Enter”键或使用上下光标键,则可以浏览下拉建议列表。
我可以自己编程,但是我觉得必须有标准的解决方案,我可以合并。然而,我发现的只是解决方案,其中该字段的价值导致了建议,而不是该字段的当前部分的值导致了建议(其中每个部分由分隔符分隔,例如“,”或“;”(如果是Gmail,或者是Stack Overflow标签中的空格)。
我正在使用Wicket(Java服务器端Web框架),因此任何特定于Wicket的解决方案都会很棒,但我确信我可以在项目中加入任何普通的Javascript库。
答案 0 :(得分:3)
jQueryUI的自动完成是一个很棒的插件。
http://jqueryui.com/demos/autocomplete/#multiple
链接是“多个值”的例子,几乎是你所描述的一个字一个字;它匹配中间的部分单词,它允许基于键的导航,多个条目。
答案 1 :(得分:2)
您可以使用the AutoCompleteTextField
class in wicket-extensions
。
Wicket Examples提供了一个示例实现作为its AJAX section中的第一项。源代码链接很难看,它位于灰色条的右边缘。
(说明甚至说“像谷歌建议!”)
答案 2 :(得分:1)
答案 3 :(得分:1)
Wicketstuff项目中有一个自动完成组件。关于如何使用它有an Blog。