Otra manera de hacerlo sería utilizar un Blob
y URL.createObjectURL
. Todos los navegadores recientes, incluido Safari 6+, los admiten.
var textFile = null,
makeTextFile = function (text) {
var data = new Blob([text], {type: 'text/plain'});
// If we are replacing a previously generated file we need to
// manually revoke the object URL to avoid memory leaks.
if (textFile !== null) {
window.URL.revokeObjectURL(textFile);
}
textFile = window.URL.createObjectURL(data);
// returns a URL you can use as a href
return textFile;
};
He aquí un example que utiliza esta técnica para guardar mensajes de texto arbitraria de un textarea
.
Otra cosa a tener en cuenta sobre el ejemplo es que utilicé el download
attribute en el enlace de descarga. Desafortunadamente, Safari no lo admite actualmente. Sin embargo, en los navegadores que sí lo hacen, el archivo se descargará automáticamente cuando se haga clic en lugar de abrir el archivo en el navegador. Además, desde que establecí el atributo download
en info.txt
, el archivo se descargará con ese nombre en lugar del nombre aleatorio generado por createObjectURL
.
Dude nos proporciona su código para que podamos ayudar ... –
vea también [Cómo crear, guardar un archivo txt con navegador compatible con JavaScript] (http://stackoverflow.com/questions/7392117/ how-to-create-save-a-txt-file-with-javascript-compatible-cross-browser) – harpo