【发布时间】:2016-04-27 20:13:54
【问题描述】:
Ruby/Rails Jquery
当响应不是 HTML 时,通过按 ctrl + 单击强制在新选项卡中打开链接会返回 404 页面。我希望能够发出“此链接在新标签页中不可用”的警报。
在全球范围内实现这一目标的最佳方式是什么?我已经更新了操作由 JQuery 的“点击”事件控制的高用例,但我正在寻找更强大的解决方案。
示例: HTML:
<a href="http://some_link/some_action">some link</a>
控制器:
def some_action
...
respond_to do |format|
format.js
end
end
【问题讨论】:
-
您需要在此处提供至少一点代码作为上下文。只要您的链接不是纯 JavaScript,在新窗口中打开不应导致自动 404。
-
控制器返回的任何非 HTML 响应。例如 JS 或 JSON。我不确定你在寻找什么样的代码?它是一个链接,控制器返回 JS。
-
我已经更新了我的问题。
-
您可能需要放入某种有用的 HTML 版本来捕捉有人在新选项卡中打开它的情况。您的控制器仅支持 JavaScript。
-
除非您可以阻止在新标签中单击和打开,否则可以通过没有链接但包含
click()处理程序来完成某些操作,您绝对必须在单击时生成一些 HTML 格式的内容,即使这是一个“你是怎么到这里的”页面。
标签: jquery ruby-on-rails ruby http-status-code-404