Javascript 国家/省/州的下拉菜单
我试图实现一个选项选择菜单,允许用户选择国家和省/州。我使用的助手方法包含所有国家和大多数省/州的数组。我在表单中使用带有选项select的helper方法来预填充下拉菜单。代码如下所示Javascript 国家/省/州的下拉菜单,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,我试图实现一个选项选择菜单,允许用户选择国家和省/州。我使用的助手方法包含所有国家和大多数省/州的数组。我在表单中使用带有选项select的helper方法来预填充下拉菜单。代码如下所示 <%= f.label :Country %> <%= f.select :country, options_for_select(country, "Canada")%> <%= f.label :State_or_Province %> <%= f.sel
<%= f.label :Country %>
<%= f.select :country, options_for_select(country, "Canada")%>
<%= f.label :State_or_Province %>
<%= f.select :states, options_for_select(states, "Ontario") %>
module StatesHelper
def states
states_array = %w{
Alabama
Alaska
Arizona
Arkansas
California
Colorado
Connecticut
Delaware
.....
}
states_array.sort_by{ |e| e.downcase }
end
end
module CountriesHelper
def country
country_array = [
"Afghanistan",
"Aland Islands",
"Albania",
"Algeria",
"American Samoa",
"Andorra",
"Angola",
....
]
country_array.sort_by{ |e| e.downcase }
end
end
<% if f.select :country, options_for_select(country, "Canada") %>
<%= f.label :State_or_Province %>
<%= f.select :states, options_for_select(canadian_provinces, "Ontario") %>
<% end %>
这很好用。然而,我希望州/省的下拉列表更具活力。我想要API,这样当用户点击“加拿大”时,加拿大的省份就会出现,同样,当用户点击“美国”时,美国的州也会出现
我只在美国各州和加拿大各省制作了两个助手文件。在记分板表格中,我尝试了if/else语句。代码如下所示
<%= f.label :Country %>
<%= f.select :country, options_for_select(country, "Canada")%>
<%= f.label :State_or_Province %>
<%= f.select :states, options_for_select(states, "Ontario") %>
module StatesHelper
def states
states_array = %w{
Alabama
Alaska
Arizona
Arkansas
California
Colorado
Connecticut
Delaware
.....
}
states_array.sort_by{ |e| e.downcase }
end
end
module CountriesHelper
def country
country_array = [
"Afghanistan",
"Aland Islands",
"Albania",
"Algeria",
"American Samoa",
"Andorra",
"Angola",
....
]
country_array.sort_by{ |e| e.downcase }
end
end
<% if f.select :country, options_for_select(country, "Canada") %>
<%= f.label :State_or_Province %>
<%= f.select :states, options_for_select(canadian_provinces, "Ontario") %>
<% end %>
if和else语句不正确。方法
加拿大\ u省
和加拿大
都是数组。我想写下,“如果从该数组中选择了加拿大,则显示加拿大省份”。我想对美国做同样的事情。我知道如果我保存数据,那么我可以使用方法进行比较。但是,我不知道在保存数据之前如何在表单中执行此操作。我很确定你必须在客户端做这件事,只是不确定如何或什么是正确的工具。一如既往,我们将非常感谢您的帮助!!谢谢 也许一个更简单的选择是请求一个邮政编码,然后使用Ziptastic的API来填充其余部分。我使用的是rails,Ziptastic gem没有得到积极维护。它的开发状态是不活跃的哦,糟糕透了。很高兴知道,谢谢你的提醒。