首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从对javascript变量的AJAX请求中获取数字时遇到问题

问从对javascript变量的AJAX请求中获取数字时遇到问题
EN

Stack Overflow用户
提问于 2013-08-14 05:18:58
回答 2查看 118关注 0票数 0

我正在尝试制作一个图表,在页面上显示CPU百分比,并随着CPU百分比的变化而自动更新。我在理解如何在发送AJAX请求后从PHP脚本中获取信息时遇到了问题。理想情况下,我希望能够在更新函数的'.update();‘部分中使用变量'$cpuPercent’。

我尝试过将php代码放在更新函数中并回显$cpuPercent,但它不会每次都更新,因为它只会运行一次,并且每次更新时都使用相同的数字。

下面是我的system_actions.php脚本中的php。

代码语言:javascript
复制
exec('wmic cpu get loadpercentage', $output2);
$cpuPercent = $output2[1];
echo json_encode($cpuPercent);

这是我的javascript

代码语言:javascript
复制
function getUsage(){
    $.ajax({
        url:'system_actions.php?action=cpu',
        async: true,
        dataType: 'json',
        type: 'post',
        success:function(output){
            var cpuPercent = parseInt(output);
            document.getElementById('cpu').value = cpuPercent;
            updateChart();
        }
    })
}
setInterval(getUsage, 2500);

function updateChart(){
    var link = document.getElementById('randombutton');
    link.click();
}

  $('.updatePieCharts').on('click', function(e) {
    e.preventDefault();
    charts.each(function() {
      var number = parseInt(document.getElementById('cpu').value);
      $(this).data('easyPieChart').update(number);
    });
  });

我肯定觉得这一切是如何协同工作的,但我不太明白。任何帮助或一个正确的方向都是很棒的。回到谷歌,我走了。

EN

回答 2

Stack Overflow用户

发布于 2013-08-14 05:25:31

由于您的PHP脚本将返回JSON,因此success回调中的output变量将是一个JavaScript对象或数组。无论哪种方式,您都不能在其上真正使用parseInt,因此var cpuPercent可能永远不会被设置为任何有用的东西。

如果你发布一些PHP脚本的示例输出,我们可以告诉你如何定位你正在寻找的数字。

票数 0
EN

Stack Overflow用户

发布于 2013-08-14 05:28:59

尝尝这个。

代码语言:javascript
复制
$.ajax({
    cache: false
})

也可以尝试将async选项切换为false。

我认为这个flot示例可能会对您有所帮助。http://www.flotcharts.org/flot/examples/realtime/index.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18219413

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档