弹出窗口中的内容不会刷新.如何使动态


Content in popup dont refresh.How to make dynamic

我在网站上工作,就像在脸书上一样,现在我在点赞并显示谁喜欢照片或帖子。我被卡在弹出窗口上,显示谁喜欢照片/帖子。我使用这个php代码:

foreach ($viewLikes as $name ) {
    echo $name["username"].", likes it!"."<br>";
}

它工作得很好,但当我把php代码放在弹出窗口中时(http://codepen.io/imprakash/pen/GgNMXO)

<a class="close" href="#">&times;</a>
<div class="content2" id="cnt">
    <? foreach ($viewLikes as $name ) {
        echo $name["username"].", likes it!"."<br>";
    }?>
</div>
</div> 

div中的内容保持不变,不会刷新。我知道我必须使用JS或AJAX,但我不太擅长。所以,如果有人有另一个弹出窗口,它将加载我的内容或一些脚本,请共享

你可以让你的PHP在JSON blob中返回你喜欢的视图,用AJAX请求它,让Javascript迭代数据并用它接收到的数据更新页面(这是使用JQuery)。

PHP:

echo json_encode($viewLikes);

Javascript:

setInterval( function() {
    $.get( 'yourphp.php', function() {
        $('#cnt').empty();
        for ( like in data ) {
            $('#cnt').append('<span>' + like + '</span>');
        }
    } );
}, 1000);

这一切都是我的想法,所以可能不会马上奏效,但希望它能给你一个正确的方向。间隔也可能很混乱,因为它们一直持续到你说停止——但这里的想法是,它将每1秒刷新一次列表(setInterval的第二个参数)

也可能值得在Javascript-iirc中的数据上放一个JSON.parse()。在这种情况下,将其保留是可以的,但通常情况下,一得到JSON就解析它是一种很好的做法,以防它出现问题,并且需要处理由此产生的异常