Popup: actualizar ventana padre

Buenas lista, tengo un formulario con un enlace a un popup, el popup es
otro formulario. Bien, necesito que al enviar el formulario del popup éste
se cierrre y la ventana padre se refresque.

Imagino que hay que usar javascript para hacer ésto, no??

Había pensado que el formulario del popup enviarlo vía ajax y con render
:update do |page| actualizar la página padre, pero tengo mis dudas,

  1. no se cómo decirle que me actualize el div que quiero con un partial y
    su objeto correspondiente:

render :update do |page|
page << “ItemDiv=opener.document.getElementById(‘categorias’);”
page << “ItemDiv.value='”+nombre+“'” ???
end

Ésto es un ejemplo que tenía hecho, pero para este caso no se cómo decirle que
me coja ese div y me pinte el partial, o si se puede hacer con
page.replace_html, reemplazar la ventana padre.

  1. cómo hago para cerrar el popup una vez que ejecuta su método?

Gracias, algún consejo o ayuda?


¿Con Mascota por primera vez? Sé un mejor Amigo. Entra en Yahoo!
Respuestas Yahoo | Mail, Weather, Search, Politics, News, Finance, Sports & Videos

2008/2/6 Miguel Angel Calleja Lÿffffe1zaro [email protected]:

page << “ItemDiv.value='”+nombre+“'” ???
end

Ésto es un ejemplo que tenía hecho, pero para este caso no se cómo decirle que me coja ese div y me pinte el partial, o si se puede hacer con page.replace_html, reemplazar la ventana padre.

  1. cómo hago para cerrar el popup una vez que ejecuta su método?

Gracias, algún consejo o ayuda?

Este es un codigo que uso en application.rb en una aplicacion para:
desde un popup seleccionar checkboxes y cuando doy submit me rellene
con esos datos un textarea del padre y cierre el popup.

function retrieve_contacts(){
var checked = Form.getInputs(‘contacts’,
“checkbox”).findAll(function(item) {
return (item.checked && item.id != ‘select_all’);
}).pluck(‘value’)
var initial_value = (opener.$(‘campaign_recipients_list’).value == ‘’)
? ‘’ :
opener.$(‘campaign_recipients_list’).value + ‘\n’
opener.$(‘campaign_recipients_list’).value = initial_value +
checked.join(‘\n’);
this.close();
}

Supongo que a lo q preguntabas…

  • para seleccionar el div del padre utilizo:
    opener.$(‘campaign_recipients_list’)
  • para cerrar el popup uso this.close

Se que no es la solucion completa a tu problema, pero espero que te
ayude a alcanzarla…

Salu2!