首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建依赖于另一个输入的输入

问创建依赖于另一个输入的输入
EN

Stack Overflow用户
提问于 2014-11-15 05:05:33
回答 1查看 33关注 0票数 0

我想要将地点与活动相关联,地点具有以下字段:国家、城市、地址和名称。我想做这样的事情,一旦你选择了一个国家和一个城市,就只会出现(在下拉列表中)属于那个城市的地方,有没有办法做到这一点?我的主要问题是变量:city_name,我知道我不能在这样的视图中创建变量,但我真的不知道如何创建它,也不知道如何临时保存它……如有任何帮助,我们将不胜感激:)

这段代码不起作用,它只是我想做的一个原型:

代码语言:javascript
复制
 <%= form_for @activity, :html => { :class => "form-horizontal activity" } do |f| %>
            <div class="transbox">
          <h1><%= "Add Place To activity" %></h1>
          </div>
          <div class = "box_round">
            <div class="row">
              <div class="control-group col-lg-10">
                <%= f.label "City Name", :class => 'control-label' %>
                <div class="controls">
                  //variable :city_name does not exist
                  <%= f.text_field :city_name, :class => 'form-control' %>
                </div>
                <%= error_span(@activity[:resume]) %>
              </div>
              <% if !:city_name.nil? %>
                  <div class="control-group col-lg-10">
                    <%= f.label "City Name", :class => 'control-label' %>S
                    <div class="controls">
                      <% place_options = options_from_collection_for_select(@places.where(:city => :city_name).sort { |a,b| a.name <=> b.name }, :id, :name, selected: params[:place_id]) %>
                      <%= f.select(:place_id, place_options, {prompt: 'Select Sport'},
                                   {prompt: 'Select Place', include_blank: false, class: "Place" }) %>
                      <%= link_to "Place doesn't exist yet?" , new_place_path %>
                    </div>
                    <%= error_span(@activity[:resume]) %>
                  </div>
              <% end %>
          </div>
        </div>
        </div>
        <% end %>
EN

回答 1

Stack Overflow用户

发布于 2014-11-15 05:31:33

您要查找的是一个称为AJAX请求的请求。这对你来说有点太多了,但它的要点是:

  1. 编写JS观察器来查看国家/地区字段。
  2. 在国家/地区字段更改时,向服务器发出JS调用并说:“给我那个JS中的所有城市,它获取城市列表并覆盖城市下拉字段中的可用选项。

你也可以选择对地点做同样的事情,但概念/想法是相同的。为了获得参考的乐趣,请查看这个铁路广播:http://railscasts.com/episodes/136-jquery-ajax-revised

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26938848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档