我正在尝试让Rails在某些条件下通过ajax请求呈现.html.erb模板.默认情况下,当我发送ajax请求时,我会一直取回.js.erb文件.
我不会解释为什么要这样做,但是我想知道是否有一种方法可以指定我何时通过ajax发送请求,让我返回html内容而不是js,或者是否存在在Rails 3.1中重构以下内容的方法:
respond_to do |format|
format.html
format.js do
if params[:page].nil?
render "home.html.erb"
else
render "home.js.erb"
end
end
end
谢谢!
解决方法:
假设您正在使用jquery,则可以设置dataType选项,即
$.ajax('some/page', {dataType: 'html'})
要么
$.get('some/page', function(){ //callback}, 'html')
将格式添加到URL(即请求’/some/page.html’)也应该可以(无论您如何提出请求)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。