我有一个简单的疑问。 我有两个下拉字段,一个用于州,另一个用于城市。我从我的数据库中加载这两个,其中我有两个名称为州和城市的表。此外,当我选择一个州时,城市也会相应地发生变化,因为我也编写了一个 jquery 代码。 这就是我将所有状态加载到我的选择标签中的方式
<%= jl.select :state_id , State.all.map{|j| [j[:name], j[:id]]}, {class: 'select2'} %>
我想要的是,当我最初加载该页面时,我不希望我的城市字段为空。我希望它是一个下拉列表,其中包含与某些特定 state_id 对应的城市。 那么我的城市选择标签应该如何看待。 City 表包含 name、id 和 state_id。
最佳答案
将 id 添加到您的状态下拉列表中
<%= jl.select :state_id , State.all.map{|j| [j[:name], j[:id]]}, {class: 'select2',id:'states_dropdown'} %>
然后您的城市下拉列表应如下所示:
<%= jl.select :city_id , City.where(:state_id=> "specific_id").map{|j| [j[:name], j[:id]]}, {class: 'select2'} %>
并将其添加到您的 CoffeeScript 文件中
$("#states_dropdown").change ->
$.ajax
url: '/category/childrens'
type: 'GET'
data :
state_id: $(this).val()
success: (data, status, response) ->
#update cities dropdown
error: ->
# Hard error
关于jquery - 在 Ruby on Rails 中从数据库获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22631307/