0

我有一个下拉列表,用户可以在其中选择一个选项。该功能可以正常工作,但每次都会重新加载页面。我已经阅读并查看了很多示例,但是我很难综合我所看到的方法。我知道我必须在控制器方法中的 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"

谢谢。

4

0 回答 0