Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery/Javascript创建一个文本文件供用户下载_Javascript_Jquery - Fatal编程技术网

jQuery/Javascript创建一个文本文件供用户下载

jQuery/Javascript创建一个文本文件供用户下载,javascript,jquery,Javascript,Jquery,我的网站上有一个表单,可以根据输入为用户创建输出。 我想用这个输出创建一个文本文件供用户下载(带有浏览器下载提示,没有安全问题) 有没有一种方法可以使用Javascript/jQuery做到这一点,而不首先使用PHP在服务器上创建文件 我是否可以使用某种Javascript对象作为虚拟文件,以便用户可以下载它(以解决用户无法从服务器下载真正的txt文件的问题)?您可以使用(,)实现这一点。看看这个: (函数(){ var textFile=null, makeTextFile=函数(文本){

我的网站上有一个表单,可以根据输入为用户创建输出。 我想用这个输出创建一个文本文件供用户下载(带有浏览器下载提示,没有安全问题)

有没有一种方法可以使用Javascript/jQuery做到这一点,而不首先使用PHP在服务器上创建文件


我是否可以使用某种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用于不支持它的浏览器: