【问题标题】:Searchable drop down list for rails 3.2.8?rails 3.2.8 的可搜索下拉列表?
【发布时间】:2012-10-17 02:45:35
【问题描述】:

在新的订单表单上,用户需要从包含数十个客户的下拉列表中选择一个客户,并且通过上下滚动很难找到和选择。这就是为什么我们要构建一个可搜索的drop down list。当用户输入客户姓名的几个字母时,下拉列表会过滤掉所有其他字母,只留下包含刚刚键入的字母的客户姓名。我们使用simple_formrails 3.2.8。我们可以做的一种方法是添加一个text box 用于输入搜索字符串并调用ajax 以相应地加载下拉列表。这需要额外的文本字段,这是多余的。有没有用户可以直接在下拉框中输入并相应过滤掉列表的解决方案?谢谢。

【问题讨论】:

标签: jquery ruby-on-rails ruby-on-rails-3 simple-form


【解决方案1】:

看看 JQuery UI 自动完成组合框。它提供下拉功能以及搜索(自动完成)功能。使用 simple_form 应该可以正常工作。

http://jqueryui.com/autocomplete/#combobox

我发现的最佳实施示例是: http://babinho.net/2011/05/autocomplete-fields-in-rails-3-1-with-jquery-ui/

【讨论】:

  • 这就是我们要找的。谢谢。顺便说一句,你碰巧有一个 Rails 集成示例吗?
  • 更新了一个详细说明使用它的网站。
  • 复制 babinho 的例子即可。该示例似乎缺少一些功能。它没有视图。
  • @RichOnRails - 谢谢 - 文档说:这不是受支持甚至不完整的小部件。它纯粹是为了演示自动完成功能可以通过一些定制来做什么——这是什么意思?
【解决方案2】:

我在找到 https://github.com/seatgeek/soulmate 的灵魂伴侣宝石上取得了相当大的成功。 还有一篇写得很好的文章也描述了 gem:http://patshaughnessy.net/2011/11/23/finding-your-soulmate-autocomplete-with-redis-in-rails-3-1

【讨论】:

    【解决方案3】:

    如果您还没有在项目中使用(或不想使用)jQuery UI,您可以使用 select2:http://ivaynberg.github.com/select2/

    【讨论】:

    • application.js 中有“//= require jquery_ui”。您的意思是 select2 与 jquery_ui 冲突吗?
    • 那么您已经使用了 jQuery UI,所以也可以使用它的自动完成小部件。如果您不使用 jQuert UI,或者不想使用它,我建议您选择 select2。据我所知,没有冲突问题。如果你同时使用这两种方法,你只是在为你的项目的 javascript 添加额外的膨胀。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多