如果remote为true,则response_to html和js

时间:2015-06-26 07:29:54

标签: ruby-on-rails ruby ruby-on-rails-4

我在控制器中有下一个代码:

def show
    respond_to { |format|
        format.html
        format.js
    }
end

我有两种观点 - show.html.hamlshow.js.haml

我在浏览器中打开了一个页面并收到了HTML。

但如果我使用jquery-ujs并与remote: true链接,我就收到了JS。

在编写的文档中:

  

Rails根据客户端提交的HTTP Accept标头确定所需的响应格式。

但是如果使用jquery-ujs,则始终接受text/javascript, application/javascript, application/ecmascript, application/x-ecmascript

在这种情况下我如何接收HTML?

1 个答案:

答案 0 :(得分:1)

您可以将format: :html添加到link-to帮助中,如下所示:

= link_to "Product", [:admin, @product], format: :html, remote: true

但是你需要一些javascript函数,它将处理这个ajax调用的回调,并对获取的html做一些事情