在jQuery中增加PHP值+1(如按钮)

时间:2013-06-28 14:21:54

标签: jquery

<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,所以用户知道他们成功点击了。

任何人都知道该怎么做?

2 个答案:

答案 0 :(得分: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

?>

这会有帮助吗?

答案 1 :(得分: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>

比我首先使用jquery text()

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

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