[Ror-es] Formulario con dos botones

David Arango arango at gmail.com
Tue Oct 16 08:28:27 GMT 2007


On 10/15/07, alarkspur <alarkspur at gmail.com> wrote:
> <%= form_remote_tag( :url => {  :action         => "elcontroladorquesea" } )
> -%>
>
> <%= text_field :mailing, :email, { :class => '', :value =>
> "tuemailaqui at email.com" } -%>
>
> <%= hidden_field_tag 'process', 'alta' %>
> <%= submit_tag 'Alta', :class => "btt", :name => '_process', :onclick
> => "Form.getInputs(this.form, null, 'process')[0].value = 'alta'" -%>
> <%= submit_tag 'Baja', :class => "btt", :name => '_process', :onclick
> => "Form.getInputs(this.form, null, 'process')[0].value = 'baja'" -%>

Puede ser una solución, quiero decir que seguramente funciona, pero me
parece que se puede hacer sin utilizar tanto artificio javascriptero:

<%= form_tag :controller => 'establishment_contents', :action =>
'llamada', :opMenu => opcionMenu %>
  <%= submit_tag ("Incluir", :name => 'incluir') %>
  <%= submit_tag ("Eliminar", :name => 'eliminar') %>
<%= end_form_tag  %>

En la acción 'llamada' puedes comprobar la presencia de cualquiera de
los dos parámetros, si el usuario pulsa "Incluir" entonces
params[:incluir] no será nil (pero sí params[:eliminar])

Ojo al usar image_submit_tag, IE no enviaría params[:incluir], sino
las coordenadas sobre las que se ha hecho click (params[:incluir_x] y
params[:incluir_y], este detalle deja tu formulario sin funcionar si
no haces bien las comprobaciones.

-- 
David Arango, el único desarrollador con una orden de alejamiento de
Jeffrey Zeldman
Simplelogica.net, ahora con un 33,3% más de intromisión en listas de correo

Cuando no hago otra cosa escribo en mildiez.net


More information about the Ror-es mailing list