これを30分間検索してみたので、すでに質問されている場合はお詫び申し上げます。
一連の結果を返すAjaxがあり、クリックすると、次のページでGETするPHPのURLにデータが追加されたURLをリロードするだけです。問題は、ユーザーが組み込みのアンカー(削除できません)をクリックした場合、URLがsomething.com#location1
追加されるため、実際にリダイレクトする新しいURLではなく、ブラウザーが長いアンカーとして解釈するURL?action=next
に変換されることです。something.com#location1?action=next
ユーザーがアンカー部分をクリックしない場合、このリダイレクトは次を使用してスムーズに機能しますwindow.location=document.url+"?action=next"
既存のページのURLからアンカー(ハッシュタグを含む)を削除する方法はありますか?
解決済み
マイケルWの答えを使って私はそれを解決することができました。私は単にこの行を置き換えました:
window.location=document.url+"?action=next"
これとともに:
window.location=document.location.href.match(/(^[^#]*)/)[0]+"?action=next"
助けてくれてありがとう!