【发布时间】:2014-12-01 05:03:35
【问题描述】:
我是 Rails 新手,感谢任何见解!更新 Rails 或 Ruby 的版本不是一种选择,我需要使用我客户的当前版本。
Ruby 版本:1.9.3-p194,Rails 版本:3.2.18
我正在通过 JavaScript/jQuery Ajax 调用加载动态 HTML 内容。当我从 app/assets/javascripts/application.js 内部进行 Ajax 调用时,一切正常。这是电话:
$.ajax({
url: '/search/login',
cache: true,
success: function(html){
console.log('SUCCESS: ', html);
}
});
名为 html 的响应变量包含 /search/login.html.erb 中的所有 HTML
但是,如果我将确切的调用移至另一个 JavaScript 文件,例如 app/assets/javascripts/search/jh.js,一切似乎都可以正常工作,除了返回的 HTML 是 LOT 更多超出预期。它实际上包含整个 HTML DOM 树,从 <DOCTYPE> 到 </html> 以及来自 /search/login.html.erb 的内容。
有人可以帮我理解为什么会这样吗?
【问题讨论】:
-
您是否在控制器的渲染语句中尝试过
layout: false?看起来更像是控制器问题而不是 jQuery 问题。 -
您能否从搜索控制器中发布这两种方法的代码:
login和jh? -
@engineersmnky 你成功了!太感谢了。如果您留下您的评论作为答案,我会选择它。再次感谢!
标签: javascript jquery ruby-on-rails ruby ajax