我需要将图表保存到JSON文件中。在此之前,我编写了一个非常简单的HTML / JavaScript来测试它(只需使用一个简单的字符串作为JSON)。
根据Stack Overflow帖子中的建议,我使用saveAs()方法。但看起来saveAs()不起作用并且没有创建文件。我正在使用Internet Explorer和Window 10.
为了调试它,我插入了3个window.alert()调用。前2个window.alert()调用正确弹出,但是第3个window.alert()调用根本没有显示。所以我担心代码会在saveAs()调用中中止。
以下是我的代码:
<html>
<head>
<title>Save</title>
<script>
function save()
{
window.alert("I am here 1");
var jsonBlob = new Blob([JSON.stringify("kiki")], { type: 'application/javascript;charset=utf-8' });
window.alert("I am here 2");
saveAs(jsonBlob, "testout.json");
window.alert("I am here 3");
}
</script>
</head>
<body>
<form name="myform">
<input type="button" onClick="save();" value="Save">
</form>
</body>
</html>
我想知道为什么saveAs()对我不起作用?我在这里错过了什么吗?我是否需要在计算机上添加一些内容才能使用saveAs()方法?
非常感谢您的建议!
答案 0 :(得分:3)
你在saveAs中有点误。 代码如下:
<html>
<head>
<title>Save</title>
<script>
function save()
{
window.alert("I am here 1");
var jsonBlob = new Blob([JSON.stringify("kiki")], { type: 'application/javascript;charset=utf-8' });
window.alert("I am here 2");
var link=window.URL.createObjectURL(jsonBlob);
window.location=link;
window.alert("I am here 3");
}
</script>
</head>
<body>
<form name="myform">
<input type="button" onClick="save();" value="Save">
</form>
</body>
</html>
答案 1 :(得分:0)
使用JavaScript转换为Excel工作表
var excelBlob = new Blob([response], { type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" }, "excel.xlsx");
var link=window.URL.createObjectURL(excelBlob);
window.location=link;