有没有一种方法可以使用JavaScript更改/添加到HTML中的多个ID/Classes



我目前有一个网站,它有多个不同的表单,每个表单都需要在它们之间传递Params,我正试图在每个链接的末尾传递Param,但目前不起作用,以下是我尝试过的:

HTML

<ul>
<li><a href="https://demonstrationlink.com" class="testClassGroup1">Link 1</a></li>
<li><a href="https://demonstrationlink.com" class="testClassGroup1">Link 2</a></li>
<li><a href="https://demonstrationlink.com" class="testClassGroup1">Link 3</a></li>
<ul/>

Javascript:

document.getElementsByClassName("testClassGroup1").href = document
.getElementsByClassName("testClassGroup1").href + formparams + websiteparams;

所以我希望JavaScript行能影响所有3个链接(Group1(,所以如果可能的话,我不必为每个链接写它?,因为我将有多个链接,以及总共相当多的组,这些组将成为大量的代码。

如有任何帮助,我们将不胜感激!

感谢

Wobbulax

您可以迭代找到的所有元素。

const links = document.getElementsByClassName("testClassGroup1");
for (let i = 0; i < links.length; i++) {
links[i].href += formparams + websiteparams;
}

for (const link of links) {
link.href += formparams + websiteparams;
}

我认为您需要的是querySelectorAllhttps://developer.mozilla.org/en-US/docs/Web/API/Element/querySelectorAll

<ul id="ulId">
<li><a href="https://demonstrationlink.com" class="testClassGroup1">Link 1</a></li>
<li><a href="https://demonstrationlink.com" class="testClassGroup1">Link 2</a></li>
<li><a href="https://demonstrationlink.com" class="testClassGroup1">Link 3</a></li>
<ul/>

//Javascript
let ulId = document.getElementById('ulId')
let list = ulId.querySelectorAll('.testClassGroup1')
list.foreach(function(item){
//action here
});

最新更新