9 回答
您有一些 javascript 代码阻止执行锚标记的默认操作。您可以检查Network
FireBug 或 Chrome DevTools 中的选项卡,以查看单击链接时是否正在发出某些 AJAX 请求。您可以尝试排除 javascript 文件,直到找到正在执行此操作的文件。
也许您使用 JavaScript 阻止了标记的重定向事件。
例如:
$(document).on('click', 'a.thatTag', function (e) {
// ...
e.preventDefault();
});
.preventDefault()
防止重定向。
Darren 正确给出,肯定是一些 javascript 代码正在发送 AJAX 请求(post 或 get),这会阻止链接按您预期的方式运行。
但是,如果您使用了外部资源,则可能很难更正min
文件中的错误。
我建议使用 jquery onclick 事件内联来规避 AJAX 调用
<a href="http://foo.bar/" onclick="window.open('https://www.foo.bar/culrsteam')">Foo</a>
您还可以使用window.open('https://www.foo.bar/culrsteam', '_blank')
like withtarget='_blank'
试试这个代码...
<a href="http://google.com/" onclick="location.replace('http://google.com/'),'_top'">Google</a>
如果地址在 href 属性中没有传输协议,则可能会发生这种情况。一个示例是将 localhost 链接为<a href="localhost"></div>
而不是<a href="http://localhost"></div>
. 如果这样做,您会看到谷歌浏览器会给出取消状态,并且在 Safari 中会出现一个对话框,询问应该在哪个应用程序中打开链接,因为传输协议是未知的。$_SERVER['HTTP_HOST']
我在 PHP 中设置链接时遇到了这个问题。
关键是,请确保将传输协议留在链接前面,无论是、http://
还是其他任何内容。https://
ftp://
我已经e.preventDefault()
设置了父元素。
我知道这是一个老问题,但是刚刚遇到了类似的问题,听起来问题可能是您的请求被浏览器阻止了。如果您当前处于尝试链接到不安全 (http) 资源的安全 (https) 环境中,则可能会发生这种情况。
目前尚不清楚您的 href 是什么,但如果您当前的环境是安全的,请确保 href 是 https(或 //)。
href
在使用 JS 设置链接的属性后,我在 ReactJS 中遇到了这个问题。我使用useState
挂钩解决了它应该是什么链接。
我有data-bs-dismiss="modal"
哪个关闭我的模式但阻止重定向