我正在做一个非常简单的网站,没有图像或任何东西,供我个人使用,其中从几个小部件提供更新的数据,我希望能够以html,txt,xls或csv将该页面下载到我的PC上,通常,浏览器无需我许可。没有安全问题,因为除窗口小部件外,该页面在我的PC上。
浏览我得到了这两个代码,但是它们没有执行我想要的操作:
Firt Code
<script LANGUAGE="JavaScript">
function download(text, name, type) {
var a = document.getElementById("a");
var file = new Blob([text], {type: type});
a.href = URL.createObjectURL(file);
a.download = name;
}
</script>
Second Code
<BODY>
<a href="" id="a">click here to download your file</a>
<button onclick="download('file text', 'myfilename.txt', 'text/plain')">Create file</button>
</BODY>
<body>
<button id="b">export to CSV</button>
<script type="text/javascript">
function exportToCsv() {
var myCsv = "Col1,Col2,Col3\nval1,val2,val3";
window.open('data:text/csv;charset=utf-8,' + escape(myCsv));
}
var button = document.getElementById('b');
button.addEventListener('click', exportToCsv);
</script>
</body>
第一个代码会执行此操作,但是它迫使我单击该按钮,并且我希望它自动完成而无需要求我进行确认,更不用说文件类型,名称或位置了。我想从onload开始下载页面。
第二个代码做了一些事情,但是除了它迫使我单击按钮之外,它还写给excel:“ Col1,Col2,Col3 \ nval1,val2,val3”,我想下载页面,显然小部件当前具有的价值。顺便说一句,它总是用不同的名称保存.csv,而我希望始终使用相同的名称。
非常感谢大家的评论和耐心的解释,我从Javascript开始,我想学习。
为了自动下载文件,您可以触发您拥有的a
的点击事件。
可以这样做: