Javascript rails窗体上的两个保存按钮功能稍有不同
我创建了一个有一定长度的表单,为此我设置了一个ajax保存按钮,以便用户可以保存进度并继续编辑表单。这很有效;没有抱怨 我的问题是当用户完成编辑并希望最终提交时,我希望在表单的末尾有第二个按钮。功能上的关键区别在于,它会在保存后重定向到“表单已提交,感谢诸如此类”页面 我尝试过使用标准的提交按钮(Javascript rails窗体上的两个保存按钮功能稍有不同,javascript,ruby-on-rails,ajax,forms,ruby-on-rails-4,Javascript,Ruby On Rails,Ajax,Forms,Ruby On Rails 4,我创建了一个有一定长度的表单,为此我设置了一个ajax保存按钮,以便用户可以保存进度并继续编辑表单。这很有效;没有抱怨 我的问题是当用户完成编辑并希望最终提交时,我希望在表单的末尾有第二个按钮。功能上的关键区别在于,它会在保存后重定向到“表单已提交,感谢诸如此类”页面 我尝试过使用标准的提交按钮(),但这似乎不起作用;未提交任何内容,单击后在日志中也未找到任何内容。(我猜这是因为我已经为表单定义了remote) 我的表格概述如下;我已经删除了表单字段和侧边栏内容,以尽量减少混乱。最后一个提交按钮
),但这似乎不起作用;未提交任何内容,单击后在日志中也未找到任何内容。(我猜这是因为我已经为表单定义了remote)
我的表格概述如下;我已经删除了表单字段和侧边栏内容,以尽量减少混乱。最后一个提交按钮是f按钮:如上所示提交
<div id="wrapper" class="active main-content">
<%= simple_form_for @incorporation, :remote => true do |f| %>
<div>
.
.
.
Form contents
.
.
.
</div>
<!-- Sidebar -->
<!-- Sidebar -->
<div id="sidebar-wrapper">
<ul id="sidebar_menu" class="sidebar-nav">
<li class="sidebar-brand"><a id="menu-toggle" href="#">Menu<span id="main_icon" class="glyphicon glyphicon-align-justify"></span></a></li>
.
.
.
Sidebar navigation tools
.
.
.
</ul>
<%= button_to "Save Progress", incorporation_path(@incorporation), remote: true, id:"save" %>
</div>
<div>
<%= f.button :submit, "Submit", id:"incorporation_submit", class: "btn btn-primary" %>
</div>
<% end %>
</div>
听起来这两个按钮都应该调用控制器中的更新操作。然后,您可以检查参数“commit”,并根据需要处理您的响应。比如说, 视图中的按钮:
<%= form.submit 'Save' %>
<%= form.submit 'Update' %>
“似乎不起作用”是什么意思?请澄清您的错误或问题。@dgilperez感谢您的回复;公平的问题。我的意思是,没有提交任何内容,也没有在单击日志时在日志中找到任何内容。(我已经在上面为将来的读者做了解释)你确定没有提交任何东西吗?浏览器控制台中有错误吗?
remote:true
将需要服务器中的.erb.js
文件来响应请求,可能缺少该文件。否则,我在最后一个f按钮中看不到任何奇怪的东西。按钮:submit
。另一件要尝试的事情:将按钮注释到,然后尝试提交。@dgilperez当我将按钮删除到时,它实际上会在日志中生成一些内容。然而,我不能让它真正重定向(参见上面的输出)。正如您所怀疑的,我没有任何.erb.js
应该在我的视图中吗?这并没有阻止我使用ajax进行保存,所以我可能不知道该去哪里查看。
<%= form.submit 'Save' %>
<%= form.submit 'Update' %>
if params[:commit] == 'Save'
... redirect somewhere ...
else
... do something else ...
end