使用jquery / javascript添加检测新注释

时间:2016-11-18 17:04:16

标签: javascript jquery

我想检测一篇文章的新评论,并添加一条新评论的通知,现在我只有发布的代码

$("#comment").submit(function(event) {
    event.preventDefault();
    $.post("comment.php",{"comment" : $("#comment_text").val()},function() {
        $("#comment_text").val("");
    });
});

如何检测到有新评论?

2 个答案:

答案 0 :(得分:0)

您需要将.change事件添加到您要观看的元素中   https://api.jquery.com/change/

答案 1 :(得分:0)

如果我理解正确,您希望从该网站的其他用户那里获得新的评论。

一个简单的可能性就是从服务器返回新的评论作为结果发送到您的帖子(更新您的代码):

$("#comment").submit(function(event) {
    event.preventDefault();
    $.post("comment.php",{"comment" : $("#comment_text").val()},function(responseData) {
        $("#comment_text").val("");
        //now use response data with new comments
        //the structure depends on you
        for(var i = 0; i < responseData.length; i++){
            $("your_comment_target").append(responseData[i].message);
        }
    });
});
在服务器(php)上创建

responseData(可能从数据库中读取)。有关返回数据的更多信息,请点击此处success

https://api.jquery.com/jquery.post/

我认为responseData的格式为JSON,这里的示例非常简单:https://jsfiddle.net/uk3nmdtr/1/

就我个人而言,我更愿意分开&#34;刷新&#34;使用ajax加载注释的函数,如:

$.get("getnewcomments.php", {articleId: /*Id or some other data here*/},
    function(responseData){
        //use response same as above
    });

高级方案将使用WebSockets或某些库来实现&#34;实时&#34;刷新。