2013-03-04 12 views
10

Qual è il modo migliore per ottenere quanto segue negli ultimi browser (con supporto html5). Preferisco principalmente il targeting per Google Chrome.Javascript salva dati nel file system (con prompt utente)

Nella mia applicazione, i dati sono manipolati tramite javascript e devono scrivere output sul file system con un prompt del browser (salva come finestra di dialogo). Non sono sicuro delle restrizioni di sicurezza per scrivere sul file system, ma non sto pianificando la scrittura anonima (ma all'utente viene richiesto e seleziona la posizione).

Vedo saveAs non supportato nativamente ancora. Con la mia ricerca, vedo poche opzioni.

  1. https://github.com/eligrey/FileSaver.js
  2. a.download (http://html5-demos.appspot.com/static/a.download.html)
  3. web filesystem
  4. URL oggetto

FileServer ricade 2,3,4 se non il supporto nativo e posso usarlo . Ma, non trovo un modo per aprire una finestra di dialogo Salva con nome. Salva semplicemente un file nella posizione predefinita (scarica la cartella in mac).

Quale opzione utilizzeresti per ottenere un buon supporto negli ultimi browser? Come si può aprire la finestra di dialogo Salva con nome e consentire all'utente di nominare il file.

Grazie.

+1

che tipo di file è. di solito lo si invia al browser con le intestazioni corrette e il browser si occupa della finestra di dialogo Salva come. –

+0

dire, un oggetto js, ​​che verrà serializzato in csv/json al salvataggio. – bsr

+0

http://stackoverflow.com/questions/4639372/export-to-csv-in-jquery –

risposta

3

Sono d'accordo con Nathan Hayfield. Il browser gestirà la finestra di dialogo di salvataggio per te. Impostazione dell'intestazione Content-Disposition invierà la risposta come allegato e il browser lo gestirà da lì. es.

content.Headers.Add("Content-Disposition", "attachment; filename=export.csv"); 
Problemi correlati