在Ruby on Rails中获取控制器中URL的锚点部分

Pio*_*ioz 42 url anchor ruby-on-rails

有没有办法在控制器中获取URL的锚点部分?

示例:如果我键入http://www.foo.com/bar#anchor123,我可以在控制器中获取字符串anchor123吗?

Tru*_*oft 44

你不能在Rails中这样做,因为锚没有发送到服务器.请参阅mikeduncan.com/?s=named+anchors

  • 那条链接现在已经死了. (5认同)

Nic*_*nco 33

不好意思,无法从服务器端(使用任何语言)检索#anchor.

这是一个客户端标志,用于告诉浏览器移动到页面中的特定位置.

但是您可以在正文中使用一些Javascript来检查锚点并使用Ajax调用将其发送回服务器...

var anchor_value;
var stripped_url = document.location.toString().split("#");
if (stripped_url.length > 1)
  anchor_value = stripped_url[1];
Run Code Online (Sandbox Code Playgroud)