1

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');
Mangrio
  • 1,000
  • 19
  • 41
  • Possible duplicate of [How to link to a
    on another page?](http://stackoverflow.com/questions/20565644/how-to-link-to-a-div-on-another-page)
    – online Thomas Aug 24 '16 at 08:04
  • @Thomas I have a slash "/" after and before # sign – Mangrio Aug 24 '16 at 08:06
  • Mnagrio http://stackoverflow.com/questions/70579/what-are-valid-values-for-the-id-attribute-in-html No slashes allowed – online Thomas Aug 24 '16 at 08:14
  • @Thomas `$(location).attr('href','myApp/directory/myPage.html');` this works fine with slashes – Mangrio Aug 24 '16 at 08:17
  • If you are using URLs such as `myApp/#/myPage.html`, then that surely is some kind of framework with a built-in routing system? As such, it should provide methods to go to a “different page”, which effectively seems to be what you want to do. So go check the documentation of that framework. – CBroe Aug 24 '16 at 08:45
  • @CBroe I am using framework7 of HTML – Mangrio Aug 25 '16 at 07:48

2 Answers2

3

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";
});
mch
  • 1,259
  • 15
  • 23
0

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

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

Community
  • 1
  • 1
Jamy
  • 901
  • 8
  • 12