Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Controlar compartamiento onclick con IE

Estas en el tema de Controlar compartamiento onclick con IE en el foro de Javascript en Foros del Web. Buenas a todos. Tengo un fichero html que creo con PHP a partir de los datos obtenidos de un formulario. Este fichero lo genero correctamente ...
  #1 (permalink)  
Antiguo 09/05/2016, 10:21
 
Fecha de Ingreso: abril-2016
Mensajes: 6
Antigüedad: 8 años
Puntos: 1
Controlar compartamiento onclick con IE

Buenas a todos.

Tengo un fichero html que creo con PHP a partir de los datos obtenidos de un formulario. Este fichero lo genero correctamente y he añadido un enlace para poder descargarme el fichero con el evento onclick.
Código:
<p>
<a id="enlace" href="firma.html" download="firma nombre apellidos.html" onclick="window.redireccionar()">Descargar firma</a>
</p>
Además al pulsar sobre el enlace quiero redireccionar a la página dónde relleno los datos del formulario.

Código:
<script type="text/javascript">
		function redireccionar()
		{
         // Vuelvo al formulario original	cuando pulso sobre el enlace para descargar la firma		
			window.location="Firma_digital.html";					
		}	
	</script>
Funciona correctamente con Chrome, Mozilla y Edge, pulso sobre el enlace y me permite descargar el fichero y me redirecciona a la página del formulario.



En cambio con IE al pulsar sobre el enlace no me permite descargar el fichero sino que lo abre sin mostrar la opción de guardarlo y no hace la redirección permaneciendo en la misma página y abriendo el fichero que quiero que se pueda descargar



No pongo el archivo completo que ocupa mucho. He insertado los enlaces entre las etiquetas IMG y envista previa no se ven. Pongo los enlaces de dropbox de las 2 imágenes por aquí:

- https://www.dropbox.com/s/wmcyop46wznztvy/link_descarga.png?dl=0
- https://www.dropbox.com/s/wwqu4xejh0qo5kw/firma.png?dl=0
  #2 (permalink)  
Antiguo 13/05/2016, 14:42
 
Fecha de Ingreso: octubre-2009
Mensajes: 305
Antigüedad: 14 años, 6 meses
Puntos: 29
Respuesta: Controlar compartamiento onclick con IE

si quieres descargar un html, lo mejor es Forzar la descarga desde PHP, usa los headers HTTP para force download, no creo que IE lo siga tratando de abrir con esos Headers
  #3 (permalink)  
Antiguo 17/05/2016, 05:50
 
Fecha de Ingreso: abril-2016
Mensajes: 6
Antigüedad: 8 años
Puntos: 1
Respuesta: Controlar compartamiento onclick con IE

No sabía que existía. Al final lo que hice fue detectar el navegador y en caso de que fuera IE mostrar un mensaje de advertencia. De todas formas me documentaré del uso del headers HTTP y lo probaré.

Muchas gracias por la respuesta sustentio
  #4 (permalink)  
Antiguo 17/05/2016, 10:27
 
Fecha de Ingreso: abril-2016
Mensajes: 6
Antigüedad: 8 años
Puntos: 1
Respuesta: Controlar compartamiento onclick con IE

La solución de sustentio la he probado y funciona correctamente. Lo único que cuando he recibido los datos enviados del formulario una vez que he generado el archivo hago una redirección.

Código:
header('Location: descarga_firma.php');
En el archivo nuevo es dónde especifico el archivo para descargar. Con ello además me ha solucionado un problema adicional que era que los navegadores de Microsoft guardaban el archivo como .htm en vez de .html

Código:
// Especifico que sea un tipo de archivo html
header('Content-type: application/html');

// Le asignamos el nombre firma.html
header('Content-Disposition: attachment; filename="firma.html"');

// Leo la fuente de la firma para que la pueda descargar el usuario.
readfile('firma.html');
Muchas gracias a sustentio de nuevo.

Etiquetas: controlar, formulario, funcion, html, onclick, php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:51.