0

在我的控制器中,我正在使用渲染更新,但我只想在 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

我在这里有什么遗漏吗?

4

1 回答 1

1

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

我曾经写过一篇博客文章,其中有几种处理方法。简短的版本可能是“根据您的条件生成 Javascript 片段”。这些天,我会远离 rjs:渲染 json 或 HTML,并在您的页面上放置一些知道如何处理它的 JavaScript。

于 2012-04-28T07:27:09.367 回答