2012-04-03 17 views
6

Tengo un "Descargar el archivo" href definido en mi archivo javascript como:URI de datos para el archivo CSV en firefox no poner extensión .csv

$("#downloadTag").html("<a href=data:text/csv;charset=utf-8," + encodeURIComponent(data) + ">Download</a>"); 

en cromo funciona como se espera, es decir cuando hago clic en la descarga link, da el nombre del archivo como "download.csv". Sin embargo, en firefox, pone un nombre de galimatías como "puzdb.part".

¿Podría alguien señalarme qué estoy haciendo mal?

Gracias

Editar: Aquí está la demostración jsFiddle: http://jsfiddle.net/kLJz9/

Edición # 2: me di cuenta de que en las ventanas que no pone .csv extensión para Chrome, así y el comportamiento de Firefox sigue siendo mismo (es decir, extensión .part)

Respuesta

3

Para Chrome puede designar el nombre/extensión del archivo agregando un atributo de descarga a su etiqueta de anclaje.

<a href="URI" download="MyFile.csv">Download</a> 

Este atributo solo funciona en chrome v 14+ y no en otro navegador.

También estoy buscando una solución a este problema, pero espero que esto ayude.

EDIT:

el atributo de descarga debería solucionar el problema que está teniendo en máquinas Windows y cromo.

+0

Gracias por la respuesta Brad. El URI de datos funciona muy bien, pero quería que fuera compatible con todos los navegadores. :-(Incluso funciona perfectamente en Mac, solo son ventanas con las que no está de acuerdo. Por favor, avíseme si encuentra la solución a esto. Gracias! – test123

+0

Hay un error en Firefox para esto: https: // bugzilla. mozilla.org/show_bug.cgi?id=622400 (Todavía estoy experimentando en Mac OS X 10.6.8 y Firefox 18.0.2). – Piran