我的mysite.com内部链接有多个标题,如下所示:
Article 1 https://externalsite1.com/url1
我需要将所有文章内部网站链接替换为其下面的外部网站网址
我在这里尝试过:http://jsfiddle.net/n4hwjrsq/2/ 但没有运气,请帮助我
$("a").each(function() {
var external_link = $("div.ptb_original_link").text();
$(this).attr('href',$(this).attr('href').replace('',external_link));
});
我希望输出具有如下外部站点链接:
Article 1 https://externalsite1.com/url1
答案 0 :(得分:1)
$(".entry_title a").each(function() {
$(this).attr('href',$(this).closest('div').next().html());
});
或者确定在带有外部链接的链接之前是否还有其他div
个链接:
$(".entry_title a").each(function() {
$(this).attr('href',$(this).closest('div').next('.ptb_original_link').html());
});
答案 1 :(得分:1)
您需要更具体地使用external_link
变量,否则,您将最终获得每个链接中的每个URL:
$("a").each(function() {
var external_link = $(this).parent().parent().next("div.ptb_original_link").text();
$(this).attr('href', external_link);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="ptb_title">
<h2 class="entry_title"><a href="https://example.com/link1">Article 1</a></h2>
</div>
<div class="ptb_original_link">https://externalsite1.com/url1</div>
<br>
<div class="ptb_title">
<h2 class="entry_title"><a href="https://example.com/link2">Article 2</a></h2>
</div>
<div class="ptb_original_link">https://externalsite2.com/url2</div>
<br>
<div class="ptb_title">
<h2 class="entry_title"><a href="https://example.com/link3">Article 3</a></h2>
</div>
<div class="ptb_original_link">https://externalsite3.com/url3</div>
<br>