【问题标题】:How to create chained selects in Rails 4/jQuery?如何在 Rails 4/jQuery 中创建链式选择?
【发布时间】:2014-01-12 01:39:55
【问题描述】:
  <div class="item">
    <%= f.label :category_id, "Category:" %>
    <%= f.select :category_id, options_from_collection_for_select(Category.all, :id, :title) %>
  </div>
  <div class="item">
    <%= f.label :leftcat_id, "Left menu:" %>
    <%= f.select :leftcat_id, options_from_collection_for_select(Leftcat.all, :id, :title) %>
  </div>
  <div class="item">
    <%= f.label :section_id, "Section:" %>
    <%= f.select :section_id, options_from_collection_for_select(Section.all, :id, :title) %>
  </div>

我这里有这段代码,我想将这些选择链接起来。如果用户在Left menu 中选择,例如Maths,则Sections 与数学等相关的内容相关。上面给出的示例如何做到这一点?我知道 rails 3 有一个旧的 chained select gem,但也许有类似的更新版本?

【问题讨论】:

  • 您可以通过为blur 或类似事件添加事件处理程序,通过 jQuery 和 ajax 更新您的下拉列表。我使用 jQuery 和 jSon 来执行此操作,基本上是调用一个方法并返回一个有效的 jSon 响应,然后将它们添加到下拉列表中。

标签: jquery ruby-on-rails ruby select ruby-on-rails-4


【解决方案1】:

如果您的集合足够小,可能值得跳过 AJAX,通过在 JS 中预加载所有数据并在客户端执行所有操作——我已经成功使用 http://railscasts.com/episodes/324-passing-data-to-javascript 之类的东西

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-30
    • 1970-01-01
    • 1970-01-01
    • 2015-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多