【问题标题】:Making a notification system using jQuery and Ajax [closed]使用 jQuery 和 Ajax 制作通知系统 [关闭]
【发布时间】:2013-03-10 08:15:08
【问题描述】:

我需要构建一个通知系统,基于 jQuery 和 Ajax,我整理了一些 PHP 代码来显示这样的 JSON:

{ "msg_new": "1", "note_new": "2", "frd_new": "2", "frd_link": "" }

如何使用 jQuery 和 setInterval 将此“通知”加载到 <span></span> 标签?我有点迷茫,谁能帮帮我?

编辑

目前,这是我尝试使用的代码,但它似乎不起作用:

<span id="new_msgs"></span>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
    function get_new() {
        $.getJSON("update_new.php", function(data) {
            $('#new_msgs').html(data["msg_new"]);
        });
    }

    setInterval(get_new, 1000);
</script>

【问题讨论】:

  • 你知道如何进行 AJAX 调用吗?你知道如何使用setInterval()吗?目前还不清楚你到底对什么感到困惑。如果我的两个问题的答案都是“是”,那么只需在 setInterval() 的回调中进行 AJAX 调用。
  • 我只有一个基本的概念,我已经用我已经完成的代码更新了我的问题

标签: php jquery ajax json setinterval


【解决方案1】:

给你一个例子:

HTML:

<span id="result">
  <span id="note"></span>
</span>

JavaScript:

function loadIt() {
  $.get('ajax/test.php', function(data) {
    var jdata = JSON.parse(data);
    $('#result #note').html(jdata.note);
    ...
  });
}
setInterval(loadIt, 1000);

这显示了如果您的变量,复制粘贴并更改其余部分,如何提升一个 当然test.php会返回你的json,1000是1秒,以毫秒为单位。

【讨论】:

  • 可行,但问题是我需要将结果添加到不同的跨度中,例如&lt;span id="new_msgs"&gt;&lt;/span&gt; &lt;span id="new_note"&gt;&lt;/span&gt;&lt;span id="new_req"&gt;&lt;/span&gt; 我需要将 json 回复加载到每个跨度中,而不是将回复加载到跨度中
  • 已根据该请求更新。
  • 但它似乎不起作用请求正在进行但我在页面上看不到任何内容
  • 请求是否按预期返回?添加错误回调或打印所有数据以记录。如果您将所有数据添加到某个 div 中,您会看到什么吗?如果您使用 crome,请打开开发工具以获取一些调试信息。
  • @HosMercury 这完全取决于情况和服务器。
猜你喜欢
  • 1970-01-01
  • 2011-06-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多