Rails3 中的 Ajax 请求,无法正常工作
Posted
技术标签:
【中文标题】Rails3 中的 Ajax 请求,无法正常工作【英文标题】:Ajax request in Rails3, can't get it to work 【发布时间】:2012-05-10 01:06:26 【问题描述】:我尝试使用 AJAX 重构我的项目。 我有一个链接...
= link_to("Please work", "show_recent_chart", :remote => true)
... xxx 控制器操作 ...
def show_recent_chart
...
respond_to do |format|
format.js
end
end
... 和一个 show_recent_chart.js.erb 模板
alert("Done!");
点击链接后我的日志文件显示:
Started GET "/show_recent_chart" for 10.0.2.2 at 2012-04-30 05:56:43 -0400
Processing by XXXController#show_recent_chart as JS
MONGODB (0ms)
Rendered xxx/show_recent_chart.js.erb within layouts/application (0.4ms)
Rendered shared/_header.slim (18.0ms)
Rendered shared/_footer.slim (0.1ms)
Completed 200 OK in 8360ms (Views: 1276.0ms)
所以看起来一切正常。但是 js.erb 模板中的 javascript 代码永远不会被执行。 Firebug 只显示请求,没有其他内容。
我怎样才能让它工作?谢谢!
【问题讨论】:
【参考方案1】:我终于想通了。 使用 firebug 我看到对我的 ajax 请求的响应是完整的 html 文档。 我不得不使用
format.js render :layout => false
完成这项工作。
【讨论】:
以上是关于Rails3 中的 Ajax 请求,无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章
jQuery AJAX 获取请求无法正常工作,返回值无法在控制台显示