【发布时间】:2010-10-15 15:03:26
【问题描述】:
如何为标签字段创建一个自动完成文本字段,如 Stack Overflow 上的那个?我想将它用于我的 Rails 应用程序。
【问题讨论】:
标签: javascript ruby-on-rails ajax autocomplete textfield
如何为标签字段创建一个自动完成文本字段,如 Stack Overflow 上的那个?我想将它用于我的 Rails 应用程序。
【问题讨论】:
标签: javascript ruby-on-rails ajax autocomplete textfield
StackOverflow 使用jQuery Autocomplete Plugin,它支持多个项目。
检查demos。
编辑页面的片段:
$("#tagnames").autocomplete("/tags/filter", {
max: 6,
highlightItem: true,
multiple: true,
multipleSeparator: " ",
matchContains: true,
scroll: true,
scrollHeight: 300
});
【讨论】:
基本思想是,您使用 onkeydown 或 onkeypress 事件(最好有一点延迟)触发对服务器的 AJAX 请求,使用目前输入的文本进行搜索并将可能的完成发送回客户。客户端然后进行 DOM 操作以显示这些。
【讨论】:
您有 2 个选项可以使用 Rails Jquery UJS 和 Autocomplete gem 或 TokenInputs 并查看 Railscasts on TokenFields 以了解如何根据您的情况进行设置。就个人而言,我喜欢后者对自己的个人主题所做的事情。
【讨论】: