php - jquery更多按钮问题

标签 php jquery function comments

我正在尝试为我的评论实现一个 jquery/ajax 分页系统。我已经实现了 jquery 删除和插入评论功能。现在我在完全实现分页部分时遇到了麻烦。我的一些代码如下。基本上,在加载更多帖子的函数中,如果用户单击删除评论按钮或插入评论按钮,我希望变量计数重置为零。这些按钮的 ID 分别是“删除评论”和“添加评论”。本质上,count 变量被传递给一个查询,其中使用 LIMIT $page,5。如果可以,请提供帮助。谢谢。

$(document).ready(function() {
    var count = 0;
    var commentcount = "<?= $commentcount ?>";
    if(commentcount <= 5){
        $("#more").hide();
    }
    if(commentcount >= 6){
        $("#more").show();
    }
    $("#more").click(loadPosts);

    function loadPosts() {
        var num = 5;
        $(".loading").show("fast");
        count += num;
        $.post("pull.php?id=<? echo $id; ?>", {'page': count}, function(data){
            $("#commentarea").append(data);
            $(".loading").hide("slow");
            var commentcount = "<?= $commentcount ?>";
            if(commentcount <= (count + num) && count >=5){
                $("#more").hide();
            }
        });
    }

});

最佳答案

在 loadPosts 中你有:

var commentcount = "<?= $commentcount ?>";

PHP 代码在页面首次加载时运行,而不是在 AJAX 请求时运行。因此,当 loadPosts 函数运行时,commentcount 被设置为其当前值。

你可能想从你的 pull.php 返回 JSON 数据而不是......像这样:

$commentcount = /* however you get your count */;
$returnData = array( 'commentcount' => $commentcount, 'comments' => $comments );
echo json_encode( $returnData );

然后在你的 JS 中:

$('#commentarea').append( data.comments );
var commentcount = data.commentcount;

关于php - jquery更多按钮问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9536154/

相关文章:

javascript - 如何在 Gmap3 中添加多个标记?

php - 如何在 PHP GET URL 变量(或函数参数)中使用&符号?

function - powershell 参数需要在脚本的前面吗?

php - PDO SQL 语句不工作

php - 我是一名转换为 python 的 php 程序员。请解释单元测试的重要性(或不重要)。我从来没有用 php 进行过单元测试!

php - 如何替换不在链接标记内的字符串?

javascript - 比较两个日期,根据其他日期更改日期

javascript - 覆盖未使用的 div

javascript - 允许输入最多 3 位小数

python - Python 中函数内函数的动态变化