使用jquery在提交表单上刷新页面问题

时间:2018-02-11 10:57:58

标签: jquery ruby-on-rails

我试图以这种方式使用jquery实现提交此表单

  

<%= link_to('ОКЕЙ', 'javascript:;', id: "create_todo_form")%>

数据已传输到表格,但页面未更新,以显示更改,因此我尝试在此代码中添加第location.reload();

的application.js

$( document ).ready(function() {

    $("#hide").click(function(){
        $("#todo_form").hide("slow");
    });

    $("#create_todo_form").click(function(){
        $("#form_id").submit();
        location.reload();
    });
});

此更改后页面已更新,但是,未执行提交。 表单在此文件中 index.html.erb

<div id="todo_form">

    <%= form_with model: @todo, id: :form_id do |form| %>
    <p>
        <% form.label :text %><br>
        <%= form.text_field :text, placeholder: "Название задачи" %>
    </p>

        <%= form.select( :project_id, options_from_collection_for_select(Project.all, :id, :title)) %>

    <p>
        <%= link_to('ОТМЕНА', 'javascript:;', id: "hide")%>
        <%= link_to('ОКЕЙ', 'javascript:;', id: "create_todo_form")%>

    </p>
    <% end %>
</div>

我如何解决这个问题,以便添加数据并更新页面?

1 个答案:

答案 0 :(得分:0)

您需要使用控制器重定向。

class ExampleController < ApplicationController

  def example
    # Your Code here
    respond_to do |format|
      format.html {redirect_to :back}  #you may use a definite path like root_path instead of :back
    end
  end

end

在这些更改后删除location.reload()