submit(value = nil, options = {}) public

Add the submit button for the given form. When no value is given, it checks if the object is a new resource or not to create the proper label:

<%= form_for @post do |f| %>
  <%= f.submit %>
<% end %>

In the example above, if @post is a new record, it will use “Create Post” as submit button label; otherwise, it uses “Update Post”.

Those labels can be customized using I18n under the helpers.submit key and using %{model} for translation interpolation:

      create: "Create a %{model}"
      update: "Confirm changes to %{model}"

It also searches for a key specific to the given object:

        create: "Add %{model}"
Show source
Register or log in to add new notes.
June 21, 2011 - (v3.0.0 - v3.0.9)
2 thanks

Clear form

for clear a form, use this:

<%= f.submit "clear", :type => "reset" %>
March 10, 2009
1 thank

Image as a submit button

use image_sugmit_tag to use an image as a submit button

September 22, 2010
1 thank

About the options argument

The options are not documented, but of course you can use the same options than submit_tag.

Note that all non-documented options are simply passed to the input tag. Amongst other things, this allows you to change the default name attribute (commit):

form.submit 'Cancel', :name => 'cancel'

That’s very handy in forms with multiple submit buttons, this way the controller can easily check in the params which action was submitted.

November 8, 2013
0 thanks

submit button with rails javascript's onclick event handler method

Code example

<%= f.submit ‘Create User’, class: ‘buttons’, :onclick => “validate_user_form_and_submit()” %>