3
<iniput type="button" id="like">
<span id="like_num"><?PHP echo $like;?></span>

$(document).ready(function(){
  $("#like").click(function(){
  $('#like_num').html(function(i, val) { return val*1+1 });     
  });
});

いいねボタンがあります。Jquery でクリックした後、php $like の値を +1 増やす必要があります。

私はjquery投稿を使用していますが、コールバック(出力)したくありません。これは一種の無駄なクエリです... 1を追加したいだけなので、ユーザーはクリックが成功したことを知っています。

誰でもそれを行う方法を知っていますか?

4

2 に答える 2

2

サーバーに返信する必要がない場合は、これでうまくいくと思います。

$(document).ready(function(){
  $("#like").click(function(){
     var count = parseInt($('#like_num').text());
     $('#like_num').text(count + 1);     
  });
});

これは、$like が常に整数であること、および別の呼び出しでサーバー上の like カウントを更新することがわかっていることを前提としています。

編集:ここにフィドルがあります:http://jsfiddle.net/AJxKb/

サーバーにも移動する必要がある場合:

 $(document).ready(function(){
      $("#like").click(function(){
         var count = parseInt($('#like_num').text());
         $('#like_num').text(count + 1); 

         $.ajax("http://yourdomain.com/update_like.php").done(function () {
             //You can update the counter here too instead of assuming it was a success
          })
      });
    });

そして、その update_like.php ファイル内:

<?php 
  $like = GetNumberOfLikesFromWhereeverTheyAreStored();

  $like = $like + 1;

  StoreTheNewNumberWhereeverTheyComeFrom($like);
  //Be careful to handle several request updating the counter simultanously

?>

それは役に立ちますか?

于 2013-06-28T14:25:55.413 に答える