我有一个表,其中每一行都有一个 select_tag 和一个 submit_tag。我想在不重新加载页面的情况下调用它。我有完整的功能,但页面必须重新加载。
如果没有 gem,假设我尝试这样的事情: 防止页面重新加载并在单击提交按钮时调用 jquery 函数。我在哪里放置 jquery 代码?
我有一个表,其中每一行都有一个 select_tag 和一个 submit_tag。我想在不重新加载页面的情况下调用它。我有完整的功能,但页面必须重新加载。
如果没有 gem,假设我尝试这样的事情: 防止页面重新加载并在单击提交按钮时调用 jquery 函数。我在哪里放置 jquery 代码?
我认为您正在寻找通话中的:remote
选项。form_for
查看form_for 下的 Unobtrusive JavaScript 文档。这将为data-remote="true"
您的表单添加一个属性,Rails 的用于 jQuery 的 Unobtrusive 脚本适配器使用该属性自动将表单转换为 Ajax 调用。
然后,您可以提供要在成功创建或更新时执行的 jQuery 代码app/views/posts/create.js.erb
或app/views/posts/update.js.erb
没有简单的方法可以添加一些 gem 或脚本以使您的请求在表中不重新加载页面。使用 AJAX 或 PJAX,您可以向服务器发出请求、检索数据并重新呈现(单元格、列、表等)。
有用的链接:
PJAX—— http ://railscasts.com/episodes/294-playing-with-pjax ;
AJAX—— http://bernatfarrero.com/jquery-and-rails-3-mini-tutorial/