私は長い間RubyとRailsをやっていますが、より動的な要素(現在はjrailsとjQuery)に関しては初心者なので、何かが足りない可能性があります。
そうは言っても、複数の要素を複数のソースから更新する必要があるページがあります。たとえば、動的ヘッダーは1つのソースから取得され、5〜6divの情報は2番目のソースから取得されます。適切な:conditionフラグが設定された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")
%>
3秒ごとに、サーバー上で「time」が呼び出され、古い「time」divが新しいものに置き換えられることを期待しています。'count'を呼び出すことはありません。
実際に発生するのは、3秒ごとに「time」を2回呼び出すことです。3番目のperiodic_call_remoteを含めると、3回呼び出されます。
これはバグですか?私がまだ理解していないjQueryの微妙さ?古代の呪い?ここでの取引は何ですか?