在rails上渲染视图后如何获取html代码

Posted

技术标签:

【中文标题】在rails上渲染视图后如何获取html代码【英文标题】:how to get html code after render a view on rails 【发布时间】:2011-03-10 02:19:33 【问题描述】:

我想得到渲染 "xxx" 的最终 html 代码然后我可以做一些事情,我可以将文件编码从 utf-8 更改为 gb2312 然后响应它

所以我的问题是如何归档这个?

【问题讨论】:

使用 javascript 和 DOM?不知道我明白你想要什么。 【参考方案1】:

您可能需要after_filter 来处理类似的事情。大概是这样的

  class ChangeEncodingFilter
    def self.filter(controller)
      controller.response.body = change_encoding(controller.response.body)
    end
  end

  class YourController < ActionController::Base
    after_filter ChangeEncodingFilter
  end

您将提供change_encoding 方法来完成实际工作。

实际上,它可能需要对响应中的其他内容进行更改,但关键是 after_filter 可以在响应发送之前对其进行处理。

【讨论】:

以上是关于在rails上渲染视图后如何获取html代码的主要内容,如果未能解决你的问题,请参考以下文章

Rails - 格式和渲染 - 它们是如何工作的?

Ruby On Rails 部分渲染

支付成功后渲染视图

提高 Rails 视图渲染的性能

Rails Ajax - 渲染不同的部分

如何渲染整个页面?