Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/02/2008, 05:58
sanmi69
 
Fecha de Ingreso: septiembre-2004
Mensajes: 191
Antigüedad: 20 años, 4 meses
Puntos: 1
window.close Y Acceso Denegado

Tengo la siguiente funcion:

Código PHP:
var ventanaExcel;

function 
cargaInformeExcel(){
      if (
ventanaExcel && !ventanaExcel.closed){
          
ventanaExcel.close();
      }    
    
ventanaExcel=window.open('''excel');     
    
ventanaExcel.document.write('<H1>Popup Test!</H1>');

Es un test, y funciona perfectamente. Si pinchas en la imagen q llama a este metodo abre una nueva ventana escribiendo test. Si se vuelve a pinchar en la misma imagen, cierra la ventana existente y vuelve a abrir otra con lo mismo.

En cambio con la funcionalidad real no funciona:


Código PHP:
var ventanaExcel;

function 
cargaInformeExcel(){
      if (
ventanaExcel && !ventanaExcel.closed){
          
ventanaExcel.close();
      }    
    
ventanaExcel=window.open('http://xxxx/xxxx.do?accion=generarExcel''excel');     
    
ventanaExcel.document.write('<H1>Popup Test!</H1>');   

La url http://xxxx/xxxx.do?accion=generarExcel retorna un excel que se incrusta en la pantalla abierta.

Pero al volver a dar al boton para q se cierre y se abra otra vez el excel, solo se cierra la ventana y no la abre, y es porq no entra por el ventanaExcel.close(); sino que el propio open, cierra la ventana.

Si cambio el if if (ventanaExcel && !ventanaExcel.closed){ por if (ventanaExcel!=null ){

aparece un error de javascript: Permiso denegado, en el .close().

El problema viene a que la ventana que se abre unicamente contiene el excel. Alguna solucino para q se comporte como si fuera html???