I've been trying to solve this for a while now, but I can't get itworking. When a user clicks a link he's asked to confirm that he wants to take this action. Then a ajax call is made. The script that's called works fine and returns a string where to redirect to.
I've seen several posts here on problems with window.location, buth none of them could solve mine.
My code:
function confirm(a,b,c){
var r=confirm("Are you sure to do this?");
if(r==true){
$.ajax({
type: "POST",
url: "/process-action.php",
async: false,
data: {a:a,b:b,c:c},
success: function(data){
window.location.href = data;
}
});
} else {
return false;
}
}
If I do alert(data)
instead of window.location.href = data
I can see that the correct data is passed. For instance /user/homepage. Yet, the redirection is not taking place.
If tried to replace the relative path with the entire url, but that didn't work either.
Try using assign()
instead:
window.location.assign(data);
window.location.href
is a property, not a method.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With