【问题标题】:Populate Dropdown based on another dropdown in ruby on rails根据 ruby​​ on rails 中的另一个下拉列表填充下拉列表
【发布时间】:2012-09-26 14:46:04
【问题描述】:

我的表单中有两个不同的字段,如下所示。

 <div class="field">
      <%= f.label :Master_Survey %><br/>
      <%= f.select :master_survey, Condition::MasterSurvey.all.map{|e| [e.Master_Survey_Code]}, { :prompt => 'Please Select' } %>
    </div>


    <div class="field">
      <%= f.label :Element_Code %><br/>
      <%= f.select :Element_Code, Condition::Element.all.map{|e| [e.Element, e.Element_Code]}, { :prompt => 'Please Select' } %>
    </div>

我希望禁用第二个字段,除非第一个字段被选中。第二个字段Element code 应该根据选择的第一个字段Master Survey 更改值。我在Elements 表中有一个Master Survey Code

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 models


    【解决方案1】:

    如果这两个模型通过has_many/belongs_to 或类似的东西相关联,最好的办法是使用grouped_collection_select 方法作为您的下拉菜单。这会将您的下拉列表组织成一个选项卡列表(使用 optgroup),然后做一些 jQuery 魔术来使 2 个下拉选择动态和链接!

    Ryan Bates 有一个RailsCast,它非常详细地解释了如何做到这一点。如果您没有专业订阅 RailsCasts,我强烈建议您购买一个,这样您就可以轻松了解如何做这样的事情:)

    希望这会为您指明正确的方向!

    【讨论】:

    • 非常感谢。我会调查的。 :))
    • 太棒了!如果您在查看 RailsCast 后有任何问题,请告诉我。
    猜你喜欢
    • 2017-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多