【问题标题】:Ruby on Rails - Update collection_select while filling out the formRuby on Rails - 在填写表单时更新 collection_select
【发布时间】:2016-08-07 03:16:57
【问题描述】:

我的应用程序工作正常,因为我有 4 条记录,我的表单中已经有相同的字段(:family_with),用户需要填写 :name

(PS:我使用的是嵌套表单和茧宝石)

这是我的表格:

= f.simple_fields_for :families do |family|
   = f.text_field :name
   = f.collection_select :family_with, Family.where(family_id: @family), :id, :name, {include_blank: "Choose a name"}

我正在寻找的是,如何在每次填充 f.text_field :name 时更新 collection_select :family_with,以便我的 collection_select :family_with 可以填充已插入每个中的 名称 = f.text_field :name.

我已经读到我可以使用 ajax 或 jQuery 来完成,但我会很感激任何代码解决方案。

【问题讨论】:

  • 由于您希望family_with 输入根据text_field 值动态更新,因此您必须发送AJAX 或使用其他javascript。

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


【解决方案1】:

是这个吗?

= f.collection_select :family_with, Family.all.where(family_id: @family), :id, :name, {include_blank: "Choose a name"},selected: f.object.family_with

【讨论】:

  • Tnx,不,我不想显示selected。我想在用户以相同的表单/页面插入name 时更新collection_select
【解决方案2】:

不确定您认为什么是“代码解决方案”,但如果您的意思是通过 ruby​​/rails,那么您至少必须提交表单以获取 collection_select 中的任何更新

当我不得不对依赖/动态选择菜单做一些事情时,这个页面对我非常有用(涉及 jQuery):http://blog.kate-travers.com/dynamic-duos-dependent-select-with-jquery-and-rails/

【讨论】:

    猜你喜欢
    • 2015-12-18
    • 1970-01-01
    • 1970-01-01
    • 2017-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多