我目前有一个显示投票计数值,百分比值和选项字符串的页面。我目前使用Ruby变量来显示这些信息,我目前正在使用一种方法来替换JSON信息,我也希望每2-3秒自动更新一次。
我目前有一个json文件向我展示了我需要的信息,但我无法弄清楚如何在我的Ruby每个循环中使用这些信息。
修改 我不想使用ruby访问JSON信息。我想用Jquery访问它。我想删除Ruby变量并添加Jquery代码,它将使用Jquery获取的JSON信息更改Span标记中的html信息
JSON:
[
{"option":"Godis","option_percentage":33,"vote_count":11},
{"option":"Selleri","option_percentage":66,"vote_count":22}
]
如果我认为正确,我需要能够在数组中的每个哈希中获取每个哈希选项。但我无法弄清楚我是如何做到这一点的,如果这是正确的方法。我应该如何工作?如何使用JQuerys getJSON()或ajax()函数获取和使用我需要的信息?
显示信息的当前方式:
<% @poll.options.each do |poll_option| %>
<% @vote_count_option = Vote.count(:poll_id => @poll.id, :vote => poll_option.id.to_i) %>
<% @option_percentage = (@vote_count_option).percent_of(@votes_count) %>
<div class="form-group">
<div class="col-lg-10">
<p style="font-size: 16px">
<span class="option"><%= poll_option.option %></span>
<span style="float: right;">Votes: <%= @vote_count_option %> (<%= @option_percentage.to_i %>%)</span>
</p>
<p>
<div class="progress">
<div class="progress-bar progress-bar-success" style="width: <%= @option_percentage %>%"></div>
</div>
</p>
</div>
</div>
<% end %>
我希望用JSON信息替换变量。
我正在使用Sinatra的json扩展和Datamapper。