我有一个问题,我在一个页面上有多个民意调查问题。很简单,在回答问题后,控制器会调用 AJAX,并使用 Chartkick gem 和 Google jaspi 库渲染显示图表的 js.erb。这仅适用于单个图表。但是,拥有多个条形图(每个已回答问题一个)是一个问题。发生的情况是最近回答的问题会覆盖错误 div 中的问题图表,并仅在最后回答的问题中显示加载。
这是基本代码。
在视图中:
<div id="results-<%= i %>" style="display: none; margin-top: -20px;"></div>
一旦问题得到回答,上面的 div 就会与图表一起显示。
在控制器中:
data = [
{
data: results_array
}
]
respond_to do |format|
@div_id = div_id
@poll_data = data
format.js
end
然后在上面块中渲染的 js.erb 文件中:
$("#results-<%= @div_id%>").html('<%= escape_javascript(bar_chart(@poll_data, library: {legend: "none"})) %>').show();
任何帮助将不胜感激。我需要为每个问题显示正确的图表并可靠地加载它们。有没有办法区分我丢失的图表或对象的实例?谢谢。