0

我有一个带有两个提交按钮的表单,这样我就可以执行如下任务:

<% form_for(something) do |f| %>
  ..
  <%= f.submit 'A' %>
  <%= f.submit 'B' %>
  ..
<% end %>

控制器:

def <controller action>
  if params[:commit] == 'A'
      # A was pressed 
  elsif params[:commit] == 'B'
      # B was pressed
  end
end

所以我的问题是我怎么能说当表单通过按钮“A”提交时,表单是:

<% form_for(something), :remote => true do |f| %>

当它被按钮 B 提交时,它是一个正常的形式:

<% form_for(something) do |f| %>
4

1 回答 1

1

我认为,您将无法以这种方式做到这一点。但是,它可以通过 javascript 来完成。

从您的表单中删除远程真实表单。将 javascript 回调添加到您的提交按钮单击事件之一以通过 ajax 提交表单。相应地调整您的控制器。

于 2013-08-27T22:21:24.967 回答