href中的多个Replace字符串共享同一类

时间:2018-06-22 07:49:59

标签: javascript html

您好,我正在尝试替换三个超链接的href。我可以使用以下代码进行操作:

var url = $('.contact_link').attr('href');
url = url.replace('http://www.contact.nl/', '/');
$('.contact_link').attr('href', url);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<a href="http://www.contact.nl/Privacypolicy.aspx" class="copyright contact_link">Privacypolicy</a> | <a href="http://www.contact.nl/PrivacyStatement.aspx" class="copyright contact_link">Privacy statement</a> |
<a href="http://www.test.nl" class="copyright">Copyright test</a>| <a href="http://www.contact.nl/Contact.aspx" class="copyright contact_link">Contact</a>

这将导致每个包含contact_link类的超链接的更改。但是每个超链接仅使用第一个href更新。因此,每个超链接现在都包含URL:“ /Privacypolicy.aspx”

我如何实现每个URL都用其对应的href更新?

1 个答案:

答案 0 :(得分:2)

您可以使用each

$('.contact_link').each(function() {
    var url = $(this).attr('href');
    url = url.replace('http://www.contact.nl/', '/');
    $(this).attr('href', url);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<a href="http://www.contact.nl/Privacypolicy.aspx" class="copyright contact_link">Privacypolicy</a> | <a href="http://www.contact.nl/PrivacyStatement.aspx" class="copyright contact_link">Privacy statement</a> |
<a href="http://www.test.nl" class="copyright">Copyright test</a>| <a href="http://www.contact.nl/Contact.aspx" class="copyright contact_link">Contact</a>