#javascript #html #arrays
#javascript #HTML #массивы
Вопрос:
У меня есть HTML-код для загрузки таких файлов:
<a class="wp-block-button__link has-background has-vivid-green-cyan-background-color" href="https://github.com/pbatard/rufus/releases/download/v3.5/rufus-3.5.exe" rel="nofollow noopener noreferrer">Download (Installer)</a>
<a class="wp-block-button__link has-background has-vivid-green-cyan-background-color" href="https://github.com/pbatard/rufus/releases/download/v3.5/rufus-3.5p.exe" rel="nofollow noopener noreferrer">Download (Portable)</a>
Я хочу, чтобы все URL-адреса в class="wp-block-button__link
теге менялись следующим образом:
<a class="wp-block-button__link has-background has-vivid-green-cyan-background-color" href="mydomain.com/get/?url=https://github.com/pbatard/rufus/releases/download/v3.5/rufus-3.5p.exe" rel="nofollow noopener noreferrer">Download (Portable)</a>
<a class="wp-block-button__link has-background has-vivid-green-cyan-background-color" href="mydomain.com/get/?url=https://github.com/pbatard/rufus/releases/download/v3.5/rufus-3.5.exe" rel="nofollow noopener noreferrer">Download (Installer)</a>
В настоящее время я изменяю его с помощью Javascript следующим образом:
let a = document.querySelector('.wp-block-button__link');
a.href = "mydomain.com/get/?url=" a.href
console.log(a.outerHTML)
Код javascript, который я использую сейчас, может изменить только один URL-адрес, я хочу изменить все URL-адреса в class="wp-block-button__link"
теге.
Как мне заставить код javascript, который я использую, изменять все URL-адреса в теге class="wp-block-button__link"
, а не только один URL-адрес?
Комментарии:
1. используйте
document.querySelectorAll
и просматривайте его2. @AswinKumar вы можете написать код здесь?
3.
document.querySelectorAll('.wp-block-button__link').forEach(a => { a.href = "mydomain.com/get/?url=" a.href });
4. спасибо @briosheje, этот код работает хорошо.
5. @RenomuReza примите любой из приведенных ниже ответов, они показывают тот же код.
Ответ №1:
Используйте querySelectorAll
и forEach
:
let allLinks = document.querySelectorAll('.wp-block-button__link');
allLinks.forEach(a => {
a.href = "mydomain.com/get/?url=" a.href;
console.log(a.outerHTML);
});
Ответ №2:
Используя document.querySelectorAll()
и перебирайте его с помощью forEach()
let a = document.querySelectorAll('.wp-block-button__link');
a.forEach((i) => i.href = "mydomain.com/get/?url=" i.href);
<a class="wp-block-button__link has-background has-vivid-green-cyan-background-color" href="https://github.com/pbatard/rufus/releases/download/v3.5/rufus-3.5.exe" rel="nofollow noopener noreferrer">Download (Installer)</a>
<a class="wp-block-button__link has-background has-vivid-green-cyan-background-color" href="https://github.com/pbatard/rufus/releases/download/v3.5/rufus-3.5p.exe" rel="nofollow noopener noreferrer">Download (Portable)</a>