Redirecting after Ajax post

I want the success on ajax post to go to the home page. For some reason I keep doing it wrong. Any idea what I should do to fix this?

window.APP_ROOT_URL = "<%= root_url %>";

Ajax

$.ajax({ url: '#{addbank_bankaccts_path}',
 type: 'POST',
 beforeSend: function(xhr) {xhr.setRequestHeader('X-CSRF-Token', '#{form_authenticity_token}')},
 dataType: "json",
 data: 'some_uri=' + response.data.uri ,
 success: function(APP_ROOT_URL) {
      window.location.assign(APP_ROOT_URL);
  }
});

success: function(response){
    window.location.href = response.redirect;
}

Hope the above will help because I had the same problem


You can return the JSON from server with redirect status and redirect URL.

{"redirect":true,"redirect_url":"https://example.com/go/to/somewhere.html"}

And in your jQuery ajax handler

success: function (res) {
    // check redirect
    if (res.redirect) {
        window.location.href = res.redirect_url;
    }
}

Note you must set dataType: 'json' in ajax config. Hope this is helpful.