javascript - JS 脚本调用 PHP 脚本,但我无法处理 html 的 JSON

标签 javascript php mysql json

我是初学者,我正在编写一个 js 函数,它每隔 1 秒调用一个 PHP 脚本,在其中检查 mysql DB 上的一些值,PHP 在 Json 中对它们进行编码,然后 JS 再次对其进行解码并将它们放入 html .

我有两个问题要问你:

-为什么您认为这段代码不能正常工作?它只将第一个值写入 <p>列表。

-我怎样才能使它具有可扩展性?每次调用 php 脚本都会执行一个查询。我需要实时之类的东西,但我认为使用这种方式我很快就会毁掉我的服务器 xD

JS

setInterval(function(){

    $.getJSON("php/checkstatus.php", function(result){

                $("#status").html(result['status']);
                $("#tempint").html(result['tempint']);
                $("#tempext").html(result['tempext'] + " ");
                $("#humidityext").html(result['humidityext'] + " ");


        });

  },1000);

json是这样的:

{"status":"0","tempext":"25","tempint":"150","humidityext":"65"}

HTML 是这样的:

<p>status: <span id='status'>xx</span> .</p>
<p>Inside temperature: <span id='tempint'>xx</span> °C</p>
<p>Outside temperature: <span id='tempext'>xx</span> °C</p>
<p>Outside humidity: <span id='humidityext'>xx</span> </p>

最佳答案

可能是,tempinttempexthumidityext 的 HTML 中有多个具有相同 id 的元素.

要调试,打开浏览器的控制台,然后查询所有四个元素,如

$("#status")

与其余三个类似,现在您将获得 HTML 标签作为结果,将鼠标悬停在该标签上并查看您想要的标签是否将数据放在高亮显示上。

如果您看到要突出显示的标记不是您想要的标记,则意味着您的元素具有重复的 ID。你需要解决这个问题。

第二个问题可以给http://socketo.me/demo一试。

关于javascript - JS 脚本调用 PHP 脚本,但我无法处理 html 的 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31744579/

相关文章:

javascript - 如何在 ng-repeat 范围内创建属性

php - 删除多个空格

c# - 具有嵌套方法的 TransactionScope - MySQL

php - 如何确保在日期更改时从 shoutcast 历史记录中插入歌曲历史数据库而不重复?

php - 如何在PHP中设置cURL的 "--upload-file"参数?

MySQL LEFT JOIN 具有多个条件

mysql - phpmyadmin MySQL数据以ascii值存储在某个表中

java - 如何将这些正则表达式组合到 JavaScript 中

javascript - 不使用 SWFObject 使嵌入的 YouTube 视频静音

javascript - 当我的元素到达屏幕底部时,如何停止 setInterval 函数?