私はしばらくの間これを解決しようとしてきましたが、うまくいきません。ユーザーがリンクをクリックすると、このアクションを実行するかどうかを確認するよう求められます。次に、ajax 呼び出しが行われます。呼び出されたスクリプトは正常に動作し、リダイレクト先の文字列を返します。
ここでwindow.locationの問題に関するいくつかの投稿を見てきましたが、どれも私のものを解決できませんでした。
私のコード:
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;
}
}
alert(data)
代わりにそうwindow.location.href = data
すると、正しいデータが渡されることがわかります。たとえば、/user/homepage. それでも、リダイレクトは行われません。
相対パスを URL 全体に置き換えようとしても、うまくいきませんでした。