jquery ajax関数は、URLのアンカーを削除します。Something.html#anchor
スクリプトのパラメータとして#がある場合はどうなりますか?
jqueryがアンカーを削除しないようにすることはできますか?
アンカーはリクエストの一部ではないため、できません。アンカーはクライアント側で(ブラウザによって)解釈されます。アンカーを送信する場合は、アンカーをデータ構造に保存し、その方法でサーバーに保存する必要があります。
いいえ、#
(フラグメントと呼ばれる)の後の部分はWebサーバーに送信されないためです。HTTPリクエストの一部ではありません。クライアント側のスクリプトからのみアクセスできます。
jQuery、AJAXを使用するか、ブラウザのナビゲーションバーにURLを貼り付けてENTER;を押すかは関係ありません。この動作はすべての場合で同じです。
ハッシュタグは、ページ上のアンカーを示し、Webサーバーに送信されないため、技術的にはURLの一部ではありません。AJAXリクエストで送信されたフォームデータの一部としてサーバーに渡す必要がある場合は、次のコマンドでアクセスできます。location.hash
var urlWithHash = location.href + location.hash;
保持することはできません#
。あなたはそれを連結することができます:
data.url + "#" + data.anchor
...または同様のもの。