使用ajax调用实时更新投票系统

时间:2013-06-29 00:32:52

标签: javascript ajax freemarker

您好我正在尝试在我的网络应用上创建一个投票系统,允许用户对特定图像进行投票或投票。功能似乎有效,但它不会实时更新,只有刷新页面后才会更新该值。投票增加了一个得分,投票下来将得分减少一个。我正在使用的JQuery如下:

 $(document).ready(function(){
      $(".vote").click(function(){
       var id = $(this).attr('id').split('_')[1];
       var vote_type = $(this).hasClass('up') ? 'up' : 'down';
          $.ajax({
              url: "/voting/",
              type: 'POST',
              data: {id: id, type: vote_type},
              success: 
          });
          return false;
      });
 });

在服务器端,我只是在模型中找到具有匹配ID的帖子并相应地编辑投票,然后将其传递给Google数据存储区。我想知道是否有任何方法可以更新视图以显示现在存储在模型中但尚未出现在屏幕上的值。感谢。

1 个答案:

答案 0 :(得分:3)

您可以为$.ajax提供一个成功回调,其中包含以下内容:

$.ajax({... success: function(data) {$('#element').val(data)}})

这将在投票后立即更新投票数。但是,如果您希望在没有任何用户交互的情况下更新投票,则可以进行某种轮询或发布/订阅。