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
 
     
     
    