window.location.href no funciona en Internet Explorer con archivos XLS
-
19-09-2019 - |
Pregunta
Tengo una aplicación heredada que, en algún momento, genera el siguiente código en una de sus páginas:
window.location.href = "http://localhost:8080/myApplication/manuals/charts.xls";
Cuando Mozilla ve esto, se abre un diálogo de descarga con "abrir con ... \ guardar como ..." opciones.
IE (V7 y V8) no se abre un cuadro de diálogo. Se necesita el archivo y simplemente la hace en la página, al igual que algo de HTML; pero es un archivo binario, por lo que todo lo que ve es basura en la pantalla.
¿Alguien ha encontrado esto antes?
EDIT1: Esto funciona en un navegador IE pero no en todos. Pienso en un problema de configuración con IE. Además, para .ppt
y archivos .doc
funciona, el problema es sólo para archivos .xls
.
Edit2: Incluso si pongo un enlace en la página como:
click <a href="http://localhost:8080/myApplication/manuals/charts.xls">here</a> for the XLS
no se mostrará el cuadro de diálogo al hacer clic en él. Simplemente se escribe en la página.
Solución
Es necesario asegurarse de que su servidor web está enviando el tipo MIME correcto para el archivo xls.
Busque un directorio con un WEB-INF
web.xml
archivo. Esto, unido al archivo, dentro del elemento web-app
:
<mime-mapping>
<extension>xls</extension>
<mime-type>application/octet-stream</mime-type>
</mime-mapping>