Mangrio
Mangrio

Reputation: 1020

Redirect to another page with button or anchor in jQuery

I have a different scenario, I want to redirect the page on click event to a link/page which contains # sign inside it. when I click on it, page remain on the same location, doesn't redirect, just replace the url in url box. I guess this is because # sign, when I replace with another link without # sign it works fine. I cannot remove this from page link, How do I redirect my page? I want to perform this in jQuery

edit: I don't want to reload my page

edit: not duplicate my link is separated by slashes "/" after and before # sign, not attached with page name

link where I want to redirect

myApp/#/myPage.html

or just

#/myPage.html

HTML

<button id="btn">Click</button>

or

<a id="btn" href="#">Click</a>

I tried these..

<button onClick="window.location='#/myPage.html';">Click</button>

and

$(document).on('click', '#btn', function (e) {
                    window.location.href = "myApp/#/myPage.html";  
//window.location.href = "#/myPage.html";  // this too tried
             });

and these

window.location.href = "#/myPage.html";
$(location).attr('href','#/myPage.html');

Upvotes: 1

Views: 9138

Answers (2)

mch
mch

Reputation: 1279

As long as the URL stays the same, the browser won't make a new page request. You could add some query parameter to the URL like this, the downside being slightly less pretty URL in the location bar:

$(document).on('click', '#btn', function (e) {
     window.location.href = "?"+Date.now()+"#/myPage.html";
});

Upvotes: 3

Jamy
Jamy

Reputation: 911

I think this stackoverflow reply answers your question: Javascript reload the page with hash value

window.location.hash = "#/myPage.html" location.reload();

Upvotes: 0

Related Questions