Posted in jquery
7
12:03 am, May 8, 2020

find and replace hrefs in existing page links using jquery

sometimes i have to do these things when you cant change the source files for some reason, usually due to old code. Its kind of a patch, but it works. The reason i had to add a delay in running the function is that the links were also loaded in using ajax, so had to wait for them to render before running the replace. Also this may still break if the page is really slow to load, so you can run it at 5ms and 10ms just to make sure it does the replace. if you inspect the links they should all have the link=1 changed to link=3. If you are fast you can see the link change while you mouse over it.

HTML

<h3>The Links</h3>
<div class='link_box'>
<a href='?link=1&something_else=2' class='btn btn-primary'>Some Link 1</a>
<a href='?link=1&something_else=3' class='btn btn-primary'>Some Link 2</a>
<a href='?link=1&something_else=4' class='btn btn-primary'>Some Link 3</a>
</div>

Javascript

function fix_my_links() {
$('.link_box a').each(function() {
		var the_href = $(this).attr('href');
		var new_href = the_href.replace('link=1', 'link=3');
		$(this).attr("href", new_href);
});
}
setTimeout(fix_my_links, 5000);
setTimeout(fix_my_links, 10000);

View Statistics
This Week
98
This Month
385
This Year
0

No Items Found.

Add Comment
Type in a Nick Name here
 
Search Code
Search Code by entering your search text above.
Welcome

This is my test area for webdev. I keep a collection of code snippits here, mostly for my reference. Also if i find a good site, i usually add it here.

Join me on Substack if you want me to send you a collection of the things i have done or found or read for the week. Or follow me on twitter if you prefer, i dont post much but i probably should!

❤👩‍💻🕹

Random Quote
The problem with hoarding is you end up living off your reserves. Eventually, you’ll become stale. If you give away everything you have, you are left with nothing. This forces you to look, to be aware, to replenish. . . . Somehow the more you give away, the more comes back to you.
Paul Arden