Red de conocimiento informático - Material del sitio web - ¿Cómo modificar dinámicamente el nombre del archivo a través de JavaScript al hacer clic en la etiqueta a para descargar el archivo?

¿Cómo modificar dinámicamente el nombre del archivo a través de JavaScript al hacer clic en la etiqueta a para descargar el archivo?

lt;script type="text/javascript"gt;

$("a").click(function () {

var href = this ;

var url = href.href;

var nombre = href.innerHTML;

if (url.indexOf("kindeditor") gt; = 0 ) {

descargar(url, nombre);

devolver falso;

}

})

/**

* Descargar

* @param? {String} dirección URL del archivo de destino

* @param? {String} nombre del archivo que deseas guardar Nombre

*/

función descargar(url, nombre de archivo) {

getBlob(url, función (blob) {

saveAs( blob, nombre de archivo);

});

};

/**

* Obtener blob

* @param? {String} dirección del archivo de destino de la URL

* @return {cb}?

*/

función getBlob(url, cb) {

var xhr = new XMLHttpRequest();

xhr.open('GET', url, true);

xhr.responseType = 'blob';

xhr.onload = function () {

if (xhr.status === 200) {

cb(xhr.response);

}

};

xhr.send();

}

/**

* Guardar

* @param? {Blob} blob ?

* @param? {String} nombre de archivo El nombre del archivo que desea guardar

*/

función saveAs(blob, nombre de archivo) {

if (window.navigator.msSaveOrOpenBlob) {

navigator.msSaveBlob(blob, nombre de archivo);

} else {

var link = document.createElement('a');

var body = document.querySelector('body');

link.href = window.URL.createObjectURL(blob);

link.download = filename;

// arreglar Firefox

enlace .estilo. mostrar = 'ninguno';

p>

body.appendChild(enlace);

link.click();

body.removeChild(enlace);

ventana.URL. revokeObjectURL(link.href);

};

}

lt;/scriptgt;