"标签中的所有href链接-6ren"> "标签中的所有href链接-我需要使用 javascript 获取所有 href 链接值。我有这个代码, Download 是这样显示的 Download Download Download Download 但-6ren">
gpt4 book ai didi

javascript - 如何使用javascript读取html ""标签中的所有href链接

转载 作者:太空宇宙 更新时间:2023-11-04 13:54:06 25 4
gpt4 key购买 nike

我需要使用 javascript 获取所有 href 链接值。我有这个代码,

<body onload="myFunction()">
<div class="pull-right">
<a class="download-link" id="download_link" href="%file_url%">Download</a>
</div>
</body>

是这样显示的

<a class="download-link" href="http://mysite.com/download/myfiles/file1.pdf">Download</a>
<a class="download-link" href="http://mysite.com/download/myfiles/file2.docx">Download</a>
<a class="download-link" href="http://mysite.com/download/myfiles/file3.zip">Download</a>
<a class="download-link" href="http://mysite.com/download/myfiles/file4.html">Download</a>

但如果我在下面的代码中使用原生 javascript,则只会显示第一项。

<script type="text/javascript">
function myFunction()
{
var url = document.getElementById("download_link").href;
var ext = url.split('.').pop();
alert(ext);
}
</script>

当我使用 javascript 显示项目时,为什么我只得到一个输出?自从我拆分文件后,我使用他们的文件扩展名对其进行了测试。知道 javascript 缺少什么吗?我只想连续显示(提醒)这些项目。我的问题是,它只显示第一项。

最佳答案

您可以使用 document.getElementsByTagName 获取所有 a 元素的 NodeList .该列表有一个长度,您可以使用[] 对其进行索引。例如:

var links = document.getElementsByTagName('a');
var i;
for (i = 0; i < links.length; ++i) {
// Do something with links[i].href
}

关于 modern browsers ,如果你想进一步限制它(例如,只链接到它们上面的 download-link 类),你可以使用 querySelectorAll,它接受一个 CSS 选择器:

var links = document.querySelectorAll('a.download-link');
// ...and then use it the same way as above

关于javascript - 如何使用javascript读取html "<a>"标签中的所有href链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19718221/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com