[英]Having trouble with using AJAX to pass data from PHP to JavaScript
[英]Having trouble getting a number from an AJAX request to a javascript variable
我試圖制作一個圖表,在頁面上顯示CPU百分比,並隨着CPU百分比的變化自動更新。 我在理解如何在發送AJAX請求后如何從PHP腳本中獲取信息時遇到問題。 理想情況下,我希望能夠使用變量“ $ cpuPercent”並包含在“ .update();”中。 我的更新功能的一部分。
我試過將PHP代碼包含在update函數中並回顯$ cpuPercent,但它不會每次都更新,因為它只會運行一次,並且每次更新時都使用相同的數字。
這是我的system_actions.php腳本中的php。
exec('wmic cpu get loadpercentage', $output2);
$cpuPercent = $output2[1];
echo json_encode($cpuPercent);
這是我的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);
});
});
在所有功能如何協同工作方面,我絕對感到脫節,但我無法完全弄清楚。 任何幫助或朝着正確方向發展的觀點都將非常有用。 回到谷歌我去。
由於您的PHP腳本返回了JSON,因此success
回調中的output
變量將是JavaScript對象或數組。 無論哪種方式,您都不能真正在其上使用parseInt
,因此var cpuPercent
可能永遠不會設置為任何有用的東西。
如果您發布了PHP腳本的一些示例輸出,我們可以告訴您如何找到所需的數字。
嘗試這個。
$.ajax({
cache: false
})
另外,您也可以嘗試將異步選項也切換為false。
我認為這個例子可以為您提供幫助。 http://www.flotcharts.org/flot/examples/realtime/index.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.