0

我正在做一个非常简单的网站,没有图像或任何东西,供我个人使用,其中更新的数据是从几个小部件呈现的,我希望能够每隔一段时间就以 html、txt、xls 或 csv 格式将该页面下载到我的电脑上,无需浏览器请求我的许可。没有安全问题,因为除了小部件,页面在我的电脑上。

冲浪我得到了这两个代码,但他们没有做我想做的事:

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开始的,我想学习。

4

1 回答 1

0

为了自动下载文件,您可以触发a您拥有的点击事件。

这可以这样做:

jQuery

$(document).ready(function() {
    $("#a").click();     
});

纯JS

window.onload = function() {
    document.getElementById("a").click();
};
于 2019-09-26T13:25:31.120 回答