jquery - 使用 jquery 和 Rails 加载部分内容

标签 jquery ruby-on-rails load partial

我很好奇使用 jquery 加载 Rails 部分的最佳方法是什么。到目前为止,我已经尝试了一个不起作用的解决方案:

$('#imagecontent').load('/newsletters/_image_gallery.html.erb', function() {
alert('Load was performed.');
});

为此构建单独的操作和/或 Controller 并设置路线的最佳解决方案是吗?我这么问是因为让第一个解决方案工作似乎更容易,也许不那么轻松。

谢谢。

最佳答案

您不应该能够从 HTTP 请求访问模板文件 (.erb),这是非常糟糕的做法。我建议您将它们放在 Web 服务器路径之外,并且仅通过您的应用程序访问它们。

我不确定 Rails,但我想你需要创建一个单独的 Controller (或其他)来执行此操作。

编辑这是因为 .erb 文件是嵌入式 Ruby 文件,如果您尝试请求它们,您将获得所有不需要的数据,例如 <%= page_title %> ,您不想向用户显示。因此,您需要通过 Rails 应用程序传递这些 .erb 文件,以便将它们正确解释为 HTML。

关于jquery - 使用 jquery 和 Rails 加载部分内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2229811/

相关文章:

javascript - 日期格式问题。 js查询

ruby-on-rails - 列错误地从 HSTORE 返回 key

java - 负载测试工具 (Java)

swift - 异步加载图像并返回 UIImage 的公共(public)函数

ruby-on-rails - 如何使我的 RoR 链接成为绝对链接?

jmeter - 我在 jmeter 'Non HTTP response message: Illegal character in path at index 38:' 中收到以下错误

jquery - 如何让工具栏保持在页面顶部只希望页面滚动通过一定的高度或元素?

javascript - 当 bool 变为 true 时,如何触发函数调用?

javascript - 可以在 ajax 的内部脚本标记内使用带有 nofollow 值的 rel 属性

ruby-on-rails - 具有命名参数的 RSpec 测试方法