1

フォームタグがあり、フォームに2つのボタンがあります。送信ボタンをクリックして、フォームでさまざまなアクションを呼び出すにはどうすればよいですか。

これが私のコードです:

<%= 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 %>

「再処理」をクリックすると、同じ形式で別のアクションを呼び出したいと思います。

これどうやってするの?

助けてください

前もって感謝します

4

3 に答える 3

1

これはRailscast38でカバーされています。それがあなたの問題を解決すると確信しています。その非常に簡単です。フォームを送信すると、実行したコミットに関する情報がparamsハッシュで送信されます。railscastを確認すると、完全に理解できます。

于 2013-03-25T06:38:47.613 に答える
1

params[:commit]2つの送信タグのアクションを区別できます。
更新しました:

@action = params [:commit]

ボタンをクリックすると@action値が「 」になり、ボタンをクリックすると「」値になります。ReprocessReprocessRemoveRemove

于 2013-03-25T06:40:17.070 に答える
0

2つの異なるフォームを使用でき、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;
});
于 2013-03-25T06:44:17.373 に答える