jueves, 15 de marzo de 2007

button_to_popup

En rails es muy sencillo hacer que un link abra una URL en un popup. Basta con utilizar link_to y utilizar el parámetro :popup.

Un ejemplo:

<%= link_to('Abrir ventana', {:action => 'my_action'}, :popup => ['ventana', 'height = 650, width = 750, top = 20, left = 100, scrollbars = 0, toolbar = 0, status = 0, menubar = 0, location = 0']) %>

Si queremos cambiar el link por un botón, no existe un método que por sí mismo te ofrezca la funcionalidad. Sin embargo, podemos darle una vuelta de tuerca al método button_to para que lo haga con una ayudita de javasctipt.

El ejemplo anterior quedaría de la siguiente manera:

<%= button_to('Abrir ventana', {:action => 'my_action'}, {:onclick => "this.form.target = 'ventana'; window.open('','ventana', 'height = 650, width = 750, top = 20, left = 100, scrollbars = 0, toolbar = 0, status = 0, menubar = 0, location = 0')"}) %>