Как я могу загрузить веб-страницу автоматически с помощью onload? - PullRequest
0 голосов
/ 26 сентября 2019

Я делаю очень простой веб-сайт, без изображений или чего-либо еще, для личного использования, где обновленные данные представлены из нескольких виджетов, и я хочу иметь возможность загружать эту страницу в формате 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.

Второй код что-то делает, но помимо этого он заставляет меня нажимать на кнопку, он пишет, чтобы превзойти это: «Col1, Col2, Col3 \ nval1, val2, val3 ", и я хочу загрузить страницу, очевидно, со значением, которое имеют виджеты в данный момент.Кстати, он всегда сохраняет .csv под другим именем, и я всегда хочу одно и то же имя.

Большое спасибо всем за ваши комментарии и терпеливые объяснения, я начинаю с Javascript и хочу узнать.

1 Ответ

0 голосов
/ 26 сентября 2019

Чтобы автоматически загрузить файл, вы можете вызвать событие щелчка для a, которое у вас есть.

Это можно сделать следующим образом:

jQuery

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

Обычный JS

window.onload = function() {
    document.getElementById("a").click();
};
...