我有自己的表格标签,我的表格中还有两个按钮。如何通过单击提交按钮在我的表单中调用不同的操作。
这是我的代码:
<%= form_for :attachment_metadata, :url=>{:action=>'delete_files'}, :html=>{:onsubmit=> "return confirm('Are you sure, you want to delete selected files?');",:multipart => true} do |f| %>
<table>
..........Some stuff here..........
</table>
<%= submit_tag 'Reprocess', :class =>'button' %>
<%= submit_tag 'Remove', :class =>'button' %>
<% end %>
点击“重新处理”我想调用不同的动作但是以相同的形式。
我该怎么做?
请帮忙
提前致谢
答案 0 :(得分:1)
Railscast 38中介绍了这一点。我相信它会解决你的问题。它非常简单。每当你提交一个表单时,它会以params方式发送一些关于你已经执行的提交的信息,我建议你看看railscast,你会完全理解。
答案 1 :(得分:1)
params[:commit]
可以区分两个提交标记的操作
更新:
@action = params [:commit]
如果您点击action
按钮,则会将@ Reprocess
值设为“Reprocess
”,如果您点击Remove
按钮,则会显示“Remove
”值,
答案 2 :(得分:0)
您可以使用两种不同的表单,然后使用jQuery提交表单。在这种情况下,您可以将表单提交到特定位置。
<form id="target" action="destination.html">
<input type="text" value="Hello there" />
<input type="submit" value="Go" />
</form>
<div id="other">
Trigger the handler
</div>
$('#target').submit(function() {
alert('Handler for .submit() called.');
return false;
});