如何追加动态数据



基本上我有一个返回JSON的REST api。在此 JSON 中,它返回上次查看的主题。例如

{ lastview : ABC }

所以我想把它插入我的页面

<div class = 'lastview'>Last viewed topic: </div>
$.getJSON("json link", function(data){
 $('<a/>',{
 text: data.lastview
 }).appendTo('.lastview');

但是由于在查看另一个主题后,此数据可能会发生变化。我的意思是,如果用户转到另一个主题名称XYZ,则JSON将最后视图从ABC更改为XYZ,但Web中的视图不会(仍然是ABC),因为它仅在页面加载时执行一次功能。

那么无论如何都可以动态检查 JSON 并在内容更改时正确返回(我的意思是当 lastview 主题更改为 XYZ 时,div 中的主题也将自动更改为 XYZ)

谢谢

setTimeout() 方法在指定的毫秒数后调用函数或计算表达式。

1000 毫秒 = 1 秒。

该函数仅执行一次。如果需要重复执行,请使用 setInterval() 方法。

setInterval({
$.getJSON("json link", function(data){
$('<a/>',
       {
         text: data.lastview
       }).appendTo('.lastview');

 }, 1000);

这是每 500 毫秒不断请求和更新一次的示例

setInterval(function() {
    // Fake ajax
    data = { lastview: "Page " + Math.floor(Math.random() * 3) };
    // Just for demo
    
    $("#lastview").empty();
    $("#lastview").append(
        $("<a></a>").text(data.lastview)
    );
}, 1000);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>Last viewed topic: <span id="lastview"></span></div>

最新更新