是否可以为特定的jQuery Ajax调用禁用Turbolinks,以防止页面刷新和滚动?

min*_*nic 6 javascript ajax jquery ruby-on-rails turbolinks

我有一个Rails 5应用程序,非常想使用Turbolinks。

在应用程序中,有几个PATCH ajax调用,它们仅用新数据更新服务器,而无需担心更新页面状态。

每当这些ajax请求返回时,Turbolinks都会刷新页面,浏览器将滚动到屏幕顶部。这不是理想的行为。最好让事物保持原样。

禁用Turbolinks可消除此问题。

导致问题的示例(超级基本)ajax调用:

$.ajax({
  method: "PATCH",
  url: url,
  data: obj
});
Run Code Online (Sandbox Code Playgroud)

是否有其他人遇到这种情况或对如何防止页面滚动发生有任何想法?

Ant*_*y E 0

data-no-turbolink=true属性添加到<a>触发 AJAX 调用或<body>标记中。

请参阅: https: //github.com/turbolinks/turbolinks-classic/issues/19 另一篇SO帖子,其问题与您的问题类似:Rails 4:在特定页面中禁用Turbolinks