Adding a button to a form

I’ve looked at the API, and the only ‘button’ reference I found was for submit. How would I add another button to a form? I tried:

button_tag ‘Do Something’, :action => ‘do_something’

But that gave me an error.

Any help would be appreciated.

As far as I know, the form can only submit to one place, but you can
put logic in the action it submits to that determines which button was
clicked. I have a form that does this and the logic basically goes like
this...

case params["commit"]
  when "Do This"
    some code to do something
  when "Do That"
    some code to do something else
end

The "commit" might be able to change to :commit. (Can't remember.) The
"Do This" and "Do That" are the values of the submit buttons.

It’s simply input :type => ‘button’

John W Higgins
wishdev@gmail.com

John,
It sounds so simple, yet I can’t seem to get it right. When I enter this line into my view:

   <%= input :type => 'button' %>

I get this error:

    wrong number of arguments (1 for 2)

So, I changed it to :

     <%= input 'Do Something', :type => 'button' %>

which returns a different error:

   `@Do Something' is not allowed as an instance variable name

What am I missing, here.
-Larry

api.rubyonrails.com has an entry for the input tag.

Michael Campbell wrote:

api.rubyonrails.com has an entry for the input tag.

> John,
> It sounds so simple, yet I can't seem to get it right. When I enter this
> line into my view:
>
> <%= input :type => 'button' %>
>
> I get this error:
> wrong number of arguments (1 for 2)
>
>
>
> So, I changed it to :
>
> <%= input 'Do Something', :type => 'button' %>
>
> which returns a different error:
>
> `@Do Something' is not allowed as an instance variable name
>
>
> What am I missing, here.
> -Larry
>
>
> >
> > It's simply input :type => 'button'
> >
> > John W Higgins
> > wishdev@gmail.com
> >
> >
> >
> > >
> > > I've looked at the API, and the only 'button' reference I found was for
> submit. How would I add another button to a form? I tried:
> > >
> > > button_tag 'Do Something', :action => 'do_something'
> > >
> > > But that gave me an error.
> > >
> > > Any help would be appreciated.
> > >
> > > --
> > > Best Regards,
> > > -Larry
> > > "Work, work, work...there is no satisfactory alternative."
> > > --- E.Taft Benson
> > >
> >
> >
> >
> >
> >
>
>
>
> --
> Best Regards,
> -Larry
> "Work, work, work...there is no satisfactory alternative."
> --- E.Taft Benson
> >
>

--
More software projects have gone awry for lack of calendar time than
for all other causes combined. -- Fred Brooks

A neat trick for this that I picked up somewhere...

give your custom button a :name attribute.

<%= submit 'cancel', :name=>:cancel %>

Then on submission, look for params[:cancel]. If it's there, that
button was pressed.

_Kevin