无法在控制器内部的渲染更新中使用`page.select`

时间:2012-04-28 07:15:52

标签: ruby-on-rails rjs

在我的控制器中,我正在使用渲染更新,但我想只在div元素存在时更新。 为了检查是否存在div元素,我使用的是page.select,但它没有响应任何内容,既没有错误也没有输出,这是我的代码

def post_update
render :update do |page|
   page.replace_html('div_id':partial=>'my_partial') unless page.select("#div_id").blank?
  end
end

这里有什么我想念的吗?

1 个答案:

答案 0 :(得分:1)

你不能在rjs中使用这样的ruby条件:在你的服务器上执行“除非”和page.select并且不知道DOM的内容是什么。

我曾经用一些方法写了blog post。短版本可能是“根据您的条件生成Javascript片段”。这些天我远离rjs:渲染json或HTML并在你的页面上有一些JavaScript知道如何处理它。