web-dev-qa-db-ja.com

Ruby on Rails

コントローラでURLのアンカー部分を取得する方法はありますか?

例: http://www.foo.com/bar#anchor12 と入力すると、コントローラで文字列anchor123を取得できますか?

42
Pioz

アンカーはサーバーに送信されないため、Railsではこれを行うことはできません。 mikeduncan.com/?s=named+anchors を参照してください

44
True Soft

申し訳ありませんが、サーバー側から(任意の言語で)#anchorを取得することはできません。

これは、ページ内の特定の位置に移動するようブラウザに指示するクライアント側フラグです。

ただし、本文でJavascriptを使用してアンカーを確認し、Ajax呼び出しを使用してサーバーに送信できます...

var anchor_value;
var stripped_url = document.location.toString().split("#");
if (stripped_url.length > 1)
  anchor_value = stripped_url[1];
33
Nicolas Blanco