Я думаю, можно ли это сделать на статическом сайте,
у меня есть ссылка на
https://www.example.com?year=2022&week=05
и основной HTML
<h4 style = "color:#FFD700"><strong>TITLE</strong><br></h1>
<h3 id = "1testing"></h3>
<h6 id = "2testing"></h6>
// skipped
<script id = "results" src = "path/to/script/202205.txt"></script>
Теперь я хочу обновить его в соответствии с параметром URL, у меня есть параметр URL (и обновить код выше) с помощью
const queryString = window.location.search;
console.info(queryString);
const urlParams = new URLSearchParams(queryString);
const yrs = urlParams.get('year')
const wks = urlParams.get('week')
console.info(yrs);
console.info(wks);
document.getElementById('results').src = "path/to/script/" + yrs + "/" + wks + ".txt"
Текстовые файлы имеют формат
document.getElementById("date").innerHTML =// date
"date";
// Number 1
document.getElementById("1testing").innerHTML =// 1testing
"1testing";
document.getElementById("2testing").innerHTML =// 2testing
"2testing";
//so on...
Однако проблема, с которой я столкнулся, заключается в том, что тег src обновляется ПОСЛЕ загрузки, а содержимое просто не обновляется, возможно, из-за того, что скрипты не в порядке, однако у меня мало знаний об этом, любой может помочь с решение по этому поводу?
Я думаю, вам следует удалить тег script и повторно добавить обновленный.
let oldScriptTag = document.getElementById('results');
let newScriptTag = document.createElement('script');
newScriptTag.id = 'results';
newScriptTag.src = 'path/to/script/' + yrs + '/' + wks + '.js';
newScriptTag.textContent = '//script';
var body = document.getElementsByTagName('body')[0];
oldScriptTag.remove();
body.appendChild(newScriptTag);
Исходный файл для тега script должен быть файлом js, .txt не выполняется. Кроме того, при наличии атрибута
src
содержимое тега script игнорируется, установкаtextContent
тега не требуется.