我有一个下拉列表,用户可以在其中选择一个选项。该功能可以正常工作,但页面每次都会重新加载。我做了一堆阅读和看过的例子,但我很难合成我见过的方法。我知道我必须在控制器方法中调用format.js调用AJAX,如:
def update_device_position
...
if @cabinet.add_cabinet_item(@position_str,params[:position].to_i)
format.js
然后在视图中,我必须像这样添加form_tag代码:
<div id="add_device">
<%= form_tag(:url => {:action => url_for(:controller => "cabinets", :action => :update_device_position), :position => i , :id => @cabinet.id }, remote: true)%>
<td>
<%= select_tag :position_name, options_for_select(@selection_list) %>
</td>
<td>
<%= hidden_field_tag 'position', i %>
<%= submit_tag "Add" , :class => "btn" %>
</td>
</div>
当我选择机柜插槽的新值并单击“提交”时,出现路由错误,指出No route matches [POST] "/cabinets/99999999"
感谢。