无法访问ajax代码中的variabel
cant reach variabel in ajax code
我正试图从另一个php文件访问一个变量,并将其设置在图表中。遗憾的是,图表没有显示任何内容(因为MachineActivityS = 0
的起始值)。当我删除var MachineActivityS = 0;
时,它会显示:MachineActivityS isn't defined
。如果我在AJAX代码中设置了图表的所有内容,它就不会显示图表。
下面你可以找到代码:
<script type="text/javascript">
var MachineActivityS = 0;
$.ajax
({
url: 'MachineActivityS.php',
type: 'get',
success: function(response)
{
MachineActivityS = response;
},
});
var hours = parseInt( MachineActivityS / 3600 ) % 24; // uren
var minutes = parseInt( MachineActivityS / 60 ) % 60; // minuten
var amountOfProducts = Math.floor(((hours * 60) + minutes) * 1.8);
var barChartData =
{
labels : ["Activity in minutes","Number of products"],
datasets : [
{
fillColor : "rgba(220,220,220,0.5)",
strokeColor : "rgba(220,220,220,0.8)",
highlightFill: "rgba(220,220,220,0.75)",
highlightStroke: "rgba(220,220,220,1)",
data : [minutes + (hours * 60), amountOfProducts]
}
]
}
window.onload = function()
{
var ctx = document.getElementById("canvas").getContext("2d");
window.myBar = new Chart(ctx).Bar(barChartData, {
responsive : false,
animation: false
});
}
</script>
如何达到该文件中的值并将其设置在图表中?
您正在回调中定义一个新的MachineActivityS
。所以改变
success: function(response) {
var MachineActivityS = response;
}
到此:
success: function(response) {
MachineActivityS = response;
}
此外,由于AJAX调用是异步运行的,因此您还需要将使用MachineActivityS
的所有内容移动到该回调中。
success: function(MachineActivityS) {
var hours = parseInt( MachineActivityS / 3600 ) % 24; // uren
var minutes = parseInt( MachineActivityS / 60 ) % 60; // minuten
var amountOfProducts = Math.floor(((hours * 60) + minutes) * 1.8);
...
}
编辑:要确保在页面加载并返回AJAX调用后绘制图表,请将$.ajax
调用移动到window.onload
事件处理程序中:
window.onload = function() {
$.ajax({
...,
success: function(MachineActivityS) {
var hours = parseInt( MachineActivityS / 3600 ) % 24; // uren
var minutes = parseInt( MachineActivityS / 60 ) % 60; // minuten
var amountOfProducts = Math.floor(((hours * 60) + minutes) * 1.8);
var barChartData = ...;
var ctx = document.getElementById('canvas').getContext('2d');
window.myBar = new Chart(ctx).Bar(barChartData, {
responsive : false,
animation: false
});
}
});
};
相关文章:
- 从桌面读取python文件时高亮显示代码
- 如何将函数包装在函数中以避免代码重复
- 通过单击表单中的按钮,在代码生成中使用javascript生成字母数字代码
- 货币代码为欧元-金额的格式不应包含小数
- Regex代码只允许一个空格
- 如何将屏幕分辨率乘以 80%,然后在代码中使用
- 从var向代码隐藏函数传递值
- 如何动态插入jquery代码
- 如何在php变量中嵌入JQuery代码
- 代码不会验证
- 如何从rails中的代码中删除新行( )
- Angularjs代码未在匿名函数中运行
- 如何做到这一点,使代码在不传递条件后执行函数
- 如何在读取XLS/XLSX本地文件时,使用IE的javascript代码启用未标记为安全的ActiveX控件
- 面向对象的Javascript代码在IE7中不起作用
- 将 jQuery 代码添加到 Index.aspx 页面
- 为什么忽略了eval()代码中的语法错误
- 元素在我的代码中不会.fadeTo.Don'I don’我不知道;s错误的JavaScript、JQuery、H
- 如何轻松地将服务器端变量从Java代码转移到客户端代码
- 无法访问ajax代码中的variabel