Tengo una página que abre un popup en el que se editan datos de la propia página padre.
Al cerrrar el popup, me interesa recargar el padre para que estos se muestren, si lo hago con window.opener.document.location.reload, me pedía reenvio de datos, por lo que acabé por establecerle directamente la dirección, de modo que desde el pop up tenía:
Código:
Ahora bien, esta página padre es bastante larga, y lo que quería era que aparte de recargarse, vaya a parar al ancla que le indica la hija. He hecho la siguiente función que tengo en el evento onunload del body.window.opener.document.location.href=window.opener.document.location.href;
Código:
Como veis primero compruebo si viene de la página con el ancla o no, ya que me iba concatenando anclas anteriormente.function reloadPadre(){ var cadena = window.opener.document.location.href; if (cadena.substring(cadena.length - 15, cadena.length)=='#posicionEtapas') { window.opener.document.location.href=cadena.substring(0,cadena.length - 15); window.opener.document.location.href=cadena; } else { window.opener.document.location.href=window.opener.document.location.href; window.opener.document.location.href=window.opener.document.location + '#posicionEtapas'; } }
Pero el problema está en que de este modo, y aun estando en el codigo en el orden correcto, ejecuta primero la redirección hacia el ancla y después recarga la página.
Estoy haciendo algo mal??? Seguro porque me suena un poco a aberración lo que trato de hacer...
Saludos!