jQuery JSON:“显示所有注释”发送和接收JSON

时间:2010-09-15 12:08:33

标签: jquery json

首先,我想说使用JSON时的新功能。

我想做什么: 在我制作评论系统时,它只对每个“新闻”显示2个评论。然后,如果超过2条评论我发了一个无效的链接,“点击这里查看其余的评论。”现在我知道解决方案1)通过制作隐藏的div然后在有人点击它时切换它。但如果所有评论的每条新闻都加载,那就太多了。

所以我希望使用JSON / ajax发送对getComments.php的调用,然后回复所有注释,然后在div中添加。

所以这就是我现在所拥有的:

function getComments(id){
    $.ajax({
      url: "misc/getComments.php",
      type: "POST",
      data: { mode: 'ajax', id: id},
        dataType: 'json',
      success: function(data, status){
                    if(typeof(data.error) != 'undefined') {
                        if(data.error != '')
                            alert(data.error);
                    } else if(data.msg == 'OK') {
alert('ok');
      }

      }
    });
}
getComments()中的

id是newsid,将在misc / getcomments.php中用于SELECT查询。

正如你所看到的那样,如果每个人都好,它应该回答“OK”,这是用:

echo '{';
   echo ' "msg": "OK" ';
echo '}';

现在,我需要回复所有信息。来自数据库的评论,新闻和其他内容。我该怎么做?我应该添加更多这些:

echo '{';
   echo ' "comment": "blabla" ';
echo '}';

    echo '{';
       echo ' "id": "1" ';
    echo '}';

? 那我怎么能淡化div中的评论呢?

1 个答案:

答案 0 :(得分:0)

很可能你可以在php端做这样的事情。

$comment_items = array();
array_push($comment_items,"This is comment 1");
array_push($comment_items,"This is comment 2");
array_push($comment_items,"This is comment 2");
header('Cache-Control: no-cache, must-revalidate');
header('Content-type: application/json');
echo json_encode($comment_items);