构建我的第一个完整堆栈应用程序!
我正在尝试创建一个选择下拉列表,该下拉列表将导航到我的应用内的展示页面。每个选项都是一个拥有自己独立展示页面的大学。我在创建onChange侦听器和路由的语法时遇到问题,以便用户导航到正确的显示页面。
<select onChange="if(this.selectedIndex!=0) self.location=this.options[this.selectedIndex].value">
<option>Select A College/University</option>
<% @schools.each do |school| %>
<option><%= link_to school.name, school_path(school)%></option>
<%end%>
</select>
提前感谢您的支持!
答案 0 :(得分:1)
<option>
代码中的链接无效。当您尝试访问option.value
时,您可能只是回到链接文本(即学校名称)。您需要做的是使链接成为值,学校名称为文本。
<% @schools.each do |school| %>
<option value="<%= school_path(school) %>"><%= school.name %></option>
<% end %>
答案 1 :(得分:0)
实际上你应该使用如下所示的select_tag
<%= select_tag(:id, options_from_collection_for_select(@schools, "id", "name"),
:onchange => ("window.location.href = 'school/'+$(this).val();") %>