jQuery/Javascript创建一个文本文件供用户下载
我的网站上有一个表单,可以根据输入为用户创建输出。 我想用这个输出创建一个文本文件供用户下载(带有浏览器下载提示,没有安全问题) 有没有一种方法可以使用Javascript/jQuery做到这一点,而不首先使用PHP在服务器上创建文件jQuery/Javascript创建一个文本文件供用户下载,javascript,jquery,Javascript,Jquery,我的网站上有一个表单,可以根据输入为用户创建输出。 我想用这个输出创建一个文本文件供用户下载(带有浏览器下载提示,没有安全问题) 有没有一种方法可以使用Javascript/jQuery做到这一点,而不首先使用PHP在服务器上创建文件 我是否可以使用某种Javascript对象作为虚拟文件,以便用户可以下载它(以解决用户无法从服务器下载真正的txt文件的问题)?您可以使用(,)实现这一点。看看这个: (函数(){ var textFile=null, makeTextFile=函数(文本){
我是否可以使用某种Javascript对象作为虚拟文件,以便用户可以下载它(以解决用户无法从服务器下载真正的txt文件的问题)?您可以使用(,)实现这一点。看看这个:
(函数(){
var textFile=null,
makeTextFile=函数(文本){
var data=newblob([text],{type:'text/plain'});
//如果要替换以前生成的文件,则需要
//手动撤消对象URL以避免内存泄漏。
if(textFile!==null){
window.URL.revokeObjectURL(文本文件);
}
textFile=window.URL.createObjectURL(数据);
返回文本文件;
};
var create=document.getElementById('create'),
textbox=document.getElementById('textbox');
create.addEventListener('click',函数(){
var link=document.getElementById('downloadlink');
link.href=makeTextFile(textbox.value);
link.style.display='block';
},假);
})();代码>
在此处键入内容创建文件下载
您可以使用(,)来实现这一点。看看这个:
(函数(){
var textFile=null,
makeTextFile=函数(文本){
var data=newblob([text],{type:'text/plain'});
//如果要替换以前生成的文件,则需要
//手动撤消对象URL以避免内存泄漏。
if(textFile!==null){
window.URL.revokeObjectURL(文本文件);
}
textFile=window.URL.createObjectURL(数据);
返回文本文件;
};
var create=document.getElementById('create'),
textbox=document.getElementById('textbox');
create.addEventListener('click',函数(){
var link=document.getElementById('downloadlink');
link.href=makeTextFile(textbox.value);
link.style.display='block';
},假);
})();代码>
在这里键入一些内容创建文件下载
仅使用Javascript或JQuery,我认为这是不可能的。对于较旧的浏览器(和简单的纯文本文件),您需要服务器端脚本。您可以在该文档模式下打开一个窗口。只使用Javascript或JQuery查看这个答案,我认为这是不可能的。对于较旧的浏览器(和简单的纯文本文件),您需要服务器端脚本。您可以在该文档模式下打开一个窗口。看看这个答案,有一个Blob
polyfill用于不支持它的浏览器:有一个Blob
polyfill用于不支持它的浏览器: