私はPHPスクリプトに対してPOSTリクエストを行うWebページを持っています。リクエストの結果に応じて、ボタンのonclickイベントは2ページのいずれかにリダイレクトを設定します。URLパラメータのリダイレクトとクリアに失敗したページ
<button id="button" type="submit">Proceed</button>
...
$.post('script.php', {
key: value
}, function(result) {
if (result != null) {
document.getElementById("button").onclick = function() {
window.top.location.href = "https://example.com/page?otherkey=othervalue";
}
} else {
document.getElementById("button").onclick = function() {
window.top.location.href = "https://example.com/otherpage?otherkey=othervalue";
};
}
});
これはデスクトップブラウザ上で正常に動作しますが、サファリのiOSの(特にiOSの10.3.2上でテスト)ボタンをクリックすると、ページが更新され、正しいサイトにリダイレクトされません。また、以前に存在していたURLパラメータもすべてクリアされます。たとえば、ボタンを含むページがexample.com/page?key=value
の場合、ページはリフレッシュされ、example.com/page?#_=_
になります。私はデバッグとJavascriptコンソールをチェックしようとしましたが、何も言いません。
リダイレクトは、自分のドメイン内のページですが、ボタンが表示されているページはFacebookのアプリページに統合されています(該当する場合)。
また、自分でURLを作成して通常通りにしようとすると、正常に読み込まれます。私はこれを引き起こす可能性があるのか分からないので、投稿に値する他の関連情報があるかどうかはわかりませんが、必要に応じてもっと言えることがあります。
これは私の問題を解決するためにはうまくいきませんでしたが、私は解決策を見つけました。私は別の答えを書いたが、応答してくれてありがとう! :) – charlieshades
嬉しい私はアイデアに触発し、問題を直接解決できなかったことを申し訳なく思う –