[英]Use of HTML5 download option in button using javascript
I want to write a Javascript function which downloads json file by adding variables into it. 我想编写一个Javascript函数,通过向其中添加变量来下载json文件。 Something like this https://jsfiddle.net/cowboy/hHZa9/ 像这样的东西https://jsfiddle.net/cowboy/hHZa9/
var obj = {a: 123, b: "4 5 6"};
var data = "text/json;charset=utf-8," + encodeURIComponent(JSON.stringify(obj));
$('<a href="data:' + data + '" download="data.json">download JSON</a>').appendTo('#container');
But now I want replace anchor tag with button. 但是现在我想用按钮替换锚标签。 I am using ExtJS 6. 我正在使用ExtJS 6。
You can use Extjs button like this: 您可以这样使用Extjs按钮:
var obj = {
a: 123,
b: "4 5 6"
},
data = "text/json;charset=utf-8," + encodeURIComponent(JSON.stringify(obj));
Ext.widget('button', {
renderTo: Ext.getBody(),
text: 'Download',
href: 'data:' + data,
autoEl: {
tag: 'a',
download: 'data.json'
}
});
Working example: https://fiddle.sencha.com/#fiddle/1chg 工作示例: https : //fiddle.sencha.com/#fiddle/1chg
You can do two things.. 您可以做两件事。
Style your a
tag so that it looks like a button
. a
标签进行样式设置,使其看起来像一个button
。
Put a button
inside the a
tag 把一个button
里面a
标签
$('<a href="data:' + data + '" download="data.json"><button>download JSON</button></a>').appendTo('#container');
as button
does not have a download
attribute so you need to use the a
tag. 如button
没有一个download
属性,所以你需要使用a
标签。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.