通过 URL 参数更改脚本“src”并使其正常运行

贾斯汀

我在想是否可以在静态网站上执行此操作,
我有链接

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.log(queryString);
                const urlParams = new URLSearchParams(queryString);
                const yrs = urlParams.get('year')
                const wks = urlParams.get('week')
                console.log(yrs);
                console.log(wks);
                document.getElementById('results').src = "path/to/script/" + yrs + "/" + wks + ".txt"

txt 文件的格式为

document.getElementById("date").innerHTML =// date
"date";
            
// Number 1
document.getElementById("1testing").innerHTML =// 1testing
"1testing";
document.getElementById("2testing").innerHTML =// 2testing
"2testing";

//so on...

但是,我遇到的麻烦是,加载后更新了 src 标签,并且内容根本没有更新,可能是因为脚本不按顺序排列,但是我对此知之甚少,任何人都可以提供帮助对此的解决方案?

阿卜杜拉齐兹·阿尔萨巴格

我认为您应该删除脚本标签并重新添加更新的标签。

  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);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章