Как удалить тег <a></a>, не затрагивая текст? - PullRequest
0 голосов
/ 03 марта 2019

Я пытаюсь удалить тег <a> </a> для ссылки «многие» с примером javascript:

<a href="somelink.com/1"> content1
</a>
<a href="somelink.com/2"> content12
</a>
<a href="somelink.com/3"> content13
</a>
<a href="somelink.com/3"> content14
</a> ........ ect ...

, чтобы он оставался таким, не затрагивая текст: *

content1
content2
content3
content4

Я пытаюсь сделать это с помощью этого кода, но безуспешно:

<script>
document.querySelectorAll('a[href^="somelink.com"]').forEach(
  x => a.href = "  "
)
</script>

Спасибо за вашу помощь

Ответы [ 3 ]

0 голосов
/ 03 марта 2019

Я сохранил все это на чистом JavaScript, поскольку вы пометили JS, а не JQuery.Это позволит получить все теги <a> на странице, поэтому будет работать, только если это то, что вы хотели.Просто добавьте это в конце своей страницы.

<script>
//Get all the a tags on the page
var tags = document.getElementsByTagName("a");
for(var i = 0; i < tags.length; i++)
{
    //Remove the link
    tags[i].href = "";
}
</script>
0 голосов
/ 03 марта 2019

Это точные результаты, которые вы показали

function removeLinks(align=true){
	var links = document.querySelectorAll('a');
  links.forEach(function(item){
  	item.href = "#";
    item.style.display="block";
    item.style.textDecoration='none';
    item.style.color='black';
  });
  
  if (align) {
  var counter = 1;
  links.forEach(function(item){
  	item.innerHTML = (item.innerHTML).substr(0,8) + counter;
    counter++;
  })
  }
}
removeLinks(align=true);
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Link Remover</title>
</head>
<body>
  <a href="somelink.com/1"> content1
</a>
<a href="somelink.com/2"> content12
</a>
<a href="somelink.com/3"> content13
</a>
<a href="somelink.com/3"> content14
</a>
</body>
</html>
0 голосов
/ 03 марта 2019

Вы изменили outerHTML на innerHTML. Код ниже

function removeTags(){
  document.querySelectorAll('a').forEach(a => {
    a.outerHTML = a.innerHTML
  })
  console.log(document.body.innerHTML)
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a href="somelink.com/1"> content1</a>
<a href="somelink.com/2"> content12</a>
<a href="somelink.com/3"> content13</a>
<a href="somelink.com/3"> content14</a>
<button onclick="removeTags()">Remove Tags</button>
...