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 });     
  });
});

我有一个like 按钮,在Jquery 中点击后我需要增加php $like 值+1。

我使用 jquery post,但我不想回调(输出),它有点浪费查询......我只想添加 1,所以用户知道他们成功点击了。

有人知道该怎么做吗?

4

2 回答 2

2

如果不需要将其传回服务器,我想这将起作用:

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

这假设您知道 $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 回答
0
$(document).ready(function(){

    var like=Number("<?PHP echo $like;?>");
    $('#like_num').text(like);

    $("#like").click(function(){

        var like=Number("<?PHP echo $like+1;?>");
        $('#like_num').empty().append(like); 
            //than disable the button and post update the database     
    });
}); 

嘿伙计们,我找到了解决方案,无需回帖即可。

我已经<?PHP echo $like;?><span></span>

text()比我先在它上面使用 jquery

当用户点击时,它empty append <?PHP $like+1;?>

比禁用按钮,发布数据并更新数据库

于 2013-06-28T15:39:54.333 回答