我认为我已经错误地将我的JSON响应中的php传递给javascript,因为它不起作用。我的代码如下,请有人提供一些指导吗?
我的PHP:
function myajax_inputtitleSubmit_func() {
$numwelds = isset($_POST['numberofwelds']) ? $_POST['numberofwelds'] : '';
$numconwelds = isset($_POST['numberofconwelds']) ? $_POST['numberofconwelds'] : '';
$fortot2 = 5;
$fortot3 = 2;
if (is_numeric($numwelds) && is_numeric($numconwelds))
{
$total['tot1'] = $numwelds + $numconwelds + $mpcountrys ;
$total['tot2'] = $numwelds + $numconwelds + $fortot2 ;
$total['tot3'] = ($numwelds + $numconwelds) + $fortot2 / $fortot3;
$response = json_encode($total);
header("Content-Type: application/json");
echo $response;
exit;
}
}
我的JS:
var json= JSON.parse( )
var dataPoints = [];
for(key in json){
dataPoints.push({label: key, y: json[key]});
}
var chart = new CanvasJS.Chart("chartContainer",
{
data: [
{
type: "column",
dataPoints: dataPoints
}
]
});
chart.render();
JSON的结构是:
{"tot1":5,"tot2":10,"tot3":7}
答案 0 :(得分:2)
现在按预期工作吗? PHP在JSFiddle中不起作用,所以我将response
硬编码到函数本身以进行测试。
修改强>
你的问题实际上是关于你的PHP,因为你的JavaScript运行得很好。您应该重新考虑将JSON response
传递给JavaScript的方式,因为您不能像我认为的那样混合PHP和JavaScript变量。