Take the 2-minute tour ×

I am trying to do a very simple task here, I would like to be able to click a button on a page and have it take me to another page. I have tried window.location.href, and a bunch of other things and it does nothing. I have tried different platforms and different browsers, all with the same result.

I know that it can call a function but I just cannot get the new page to load. Also this is all in my local file system and both pages live at the same level (but I have also tried to load an external page like www.apple.com).

Any thoughts?

Thanks Patrick

share|improve this question
You need to be more specific than "a bunch of other things." Post your code (HTML and JavaScript) and tell us what errors you're getting. –  Matthew Flaschen Sep 10 '10 at 7:12
Not a good idea: A button is experienced by the user as something that causes action/trigger (postback, save/load). A Link (a href) is jused for navigation. Do not mix those. You'll confuse users. –  Caspar Kleijne Sep 10 '10 at 7:46
add comment

3 Answers

up vote 23 down vote accepted

Simple code to redirect page

//html button designing and calling the event in javascript
<input id="btntest" type="button" value="Check" 
       onclick="return btntest_onclick()" />

function btntest_onclick() 
    window.location.href = "http://www.google.com";

share|improve this answer
This one worked, however I think that my issue was that I had type="submit" and not type="button". Thanks for the help! –  Patrick Sep 10 '10 at 17:47
add comment

Just window.location = "http://wherever.you.wanna.go.com/", or, for local links, window.location = "my_relative_link.html".

You can try it by typing it into your address bar as well, e.g. javascript: window.location = "http://www.google.com/".

Also note that the protocol part of the URL (http://) is not optional for absolute links; omitting it will make javascript assume a relative link.

share|improve this answer
Thanks for the suggestion, I didn't know you could run javascript in the browser, learn something new every day. I was trying the window.location and others like it but couldn't get it to work, and I knew that it should. I found that my "type" was wrong so it had nothing to do with the JavaScript and everything to do with the HTML. Thanks again for the advice. –  Patrick Sep 10 '10 at 17:49
add comment

Don't abuse form elements where <a> elements will suffice.

    /* or put this in your stylesheet */

    .button {
        display: inline-block;
        padding: 3px 5px;
        border: 1px solid #000;
        background: #eee;


<!-- instead of abusing a button or input element -->
<a href="url" class="button">text</a>
share|improve this answer
+1 for simplification! –  elusive Sep 10 '10 at 7:18
I was also thinking of going this way. Thank you for the help. I enjoy these buttons more anyway. Thanks again. –  Patrick Sep 10 '10 at 17:51
+1 for doing it 'The Right Way' –  michaelward82 Jan 11 at 0:01
add comment

Your Answer


