I need to make sure that when the user clicks OK in a JavaScript alert window, the browser moves to a different URL. Is this possible?
Asked
Active
Viewed 3.1e+01k times
8 Answers
80
What do you mean by "make sure"?
alert('message');
window.location = '/some/url';
redirects user after they click OK in the alert window.

penartur
- 9,792
- 5
- 39
- 50
20
An alert does not return a value, in fact returns undefined
so the easiest way I find right now is conditioning the alert like this
if(!alert("my text here")) document.location = 'http://stackoverflow.com/';
A better way is using confirm() javascript function like this
if(confirm("my text here")) document.location = 'http://stackoverflow.com/';
Another option is making your own alert of course

David Diez
- 1,165
- 1
- 11
- 23
15
I think what you need is this :
if(confirm("Do u want to continue?")) {
window.location.href = "/some/url"
}

Subodh
- 2,204
- 18
- 22
7
Yes, simply redirect right after the alert()
call:
alert('blah blah');
location.href = '....';

ThiefMaster
- 310,957
- 84
- 592
- 636
2
If it is for accessibility and you want to listen to every link on the page and than check if you are leaving the current site to another domain, check out what I wrote, expanding on Joe's answer
$('a').on('click', function() {
if ( this.host !== window.location.host ) {
if ( window.confirm('Really go to another page?') ) {
// They clicked Yes
console.log('you chose to leave. bye.');
}
else {
// They clicked no
console.log('you chose to stay here.');
return false
}
}
});

yotke
- 1,170
- 2
- 12
- 26
1
In my case, reload was also needed.
alert('your message');
window.location = '/yoururl';
window.location.reload();

Esteban
- 101
- 3
- 6
0
Response.Write("<script Response.Write("<script
language='javascript'>window.alert('Done');window.location='URL';</script>");

Momen Alnaser
- 85
- 8