我的页面上有一个搜索表单,并且启用Turbolinks是安全的,因为它使用method =“get”
有没有简单的方法让表格在Turbolinks的控制下提交(即避免页面刷新)
答案 0 :(得分:24)
您可以在application.js
:
// send get forms through turbolinks
$(document).on("submit", "form[data-turboform]", function(e) {
Turbolinks.visit(this.action+(this.action.indexOf('?') == -1 ? '?' : '&')+$(this).serialize());
return false;
});
然后,要使用turbolinks发送任何表单,您需要将data-turboform
属性添加到表单中,如下所示:
<form action="..." method="get" data-turboform>
...
</form>
答案 1 :(得分:1)
在turbolinks项目中,有issue #64,有人为Rails编写了Coffeescript实现。
添加该链接提供的代码。
它添加了一个turboforms
函数,需要在页面就绪时调用,如下所示:
$(turboforms);
我正在实施这个,如果我发现其他有用的东西,我会更新我的答案。