我的 Rails 应用程序中有一个链接,它应该是 jQuery 的切换按钮,如下所示:
<span id="listings-toggle"><a>sold listings</a></span>
我没有添加 href="#"
标记的原因是,每当我这样做时,单击链接时都会发生切换操作,但随后会恢复到默认状态。默认情况下显示一个 div,您单击切换按钮切换到另一个 div,但在一两秒内它会自行切换回默认状态。然而,当我删除 href 时,这种情况不会发生,并且切换工作正常。
我检查了当我在 anchor 标记中包含 href 时发生的请求,并且由于某种原因,当前页面的 GET 路由总是在单击它时被调用。为什么?显然,删除 href 行意味着鼠标光标悬停在其上时不会表明可单击。可能发生了什么?我在 href 标记中所做的只是“#”,因此它不应该再次调用该页面。
最佳答案
您需要使用 e.preventDefault()
来阻止 click
事件上的默认操作,这将停止恢复。或者,您可以将 cursor:pointer
添加到样式规则中,而不必具有 href
属性
关于javascript - 为什么我的 Rails 应用程序中的链接会这样做?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24874835/