2

こんにちは、ユーザーが特定の画像に投票または反対票を投じることができる投票システムを Web アプリで作成しようとしています。機能は動作しているように見えますが、リアルタイムで更新されず、値はページを更新した後にのみ更新されます。賛成票を投じるとスコアが 1 加算され、反対票を投じるとスコアが 1 減ります。私が使用している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 データストアに渡します。ビューを更新して、モデルに保存されているがまだ画面に表示されていない値を表示する方法はあるのでしょうか。ありがとう。

4

1 に答える 1

4

$.ajax次のようなもので更新される成功のコールバックを与えることができます。

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

これにより、投票直後に投票数が更新されます。ただし、ユーザーの操作なしで投票を更新する場合は、何らかのポーリングまたはパブリッシュ/サブスクライブを行うことができます。

于 2013-06-29T00:58:42.120 に答える