多个periodic_call_remote调用的行为不符合预期

时间:2010-08-06 18:17:53

标签: javascript jquery ruby-on-rails dhtml jrails

我一直在做ruby和rails很长一段时间,但是当涉及到更多动态元素(目前是jrails和jQuery)时,我是新手,所以我完全有可能错过了一些东西。

那就是说,我有一个页面,其中多个元素需要从多个来源更新。例如,动态标头来自一个源,5-6个div信息来自第二个。我有6-7个periodic_call_remote调用,带有相应的:条件标志设置,所以只有可见的实际上会导致调用。问题是,即使没有其他div可见,也有7次调用动态标题!

为清楚起见,我创建了一个演示类似行为的页面:

<%= javascript_include_tag 'jquery' %>
The server time is:
<%= render :partial => 'time' %>
<%= periodically_call_remote(:update => 'time',
    :url => { :action => :time },
    :frequency => 3) %>.

Here's the results from some other function!
<%= render :partial => 'count' %>
<%= periodically_call_remote(:update => 'count',
    :url => { :action => :count },
    :frequency => 3,
    :condition => "false")
%>

我希望每三秒钟,这将在服务器上调用“时间”,并用新的“时间”替换旧的“时间”。它永远不会叫'计数'。

实际发生的是,每三秒钟,它会将“时间”称为两次。如果我包含第三个periodic_call_remote,它将调用它三次。

这是一个错误吗?一个微妙的jQuery我还不明白?古诅咒?这是什么交易?

1 个答案:

答案 0 :(得分:0)

我显然无法关闭自己的问题,我不想删除它,以免其他人重复我可怕的错误,所以我正在评论并将其标记为答案。

答案是:升级。