我试图以这种方式使用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>
我如何解决这个问题,以便添加数据并更新页面?
答案 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()
。