我在Javascript中使用以下数组,当我使用slice命令访问变量
时,它工作得很好dataSequence = [
{
name: 'Week 1',
data: [1, 2, 2, 1, 1, 2, 2,5]
}, {
name: 'Week 2',
data: [6, 12, 2, 3, 3, 2, 2,6]
}
];
然后,当我使用这个PHP脚本通过Ajax显示相同的数据。
$out = "[
{
name: 'Week 1',
data: [1, 2, 2, 1, 1, 2, 2,5]
}, {
name: 'Week 2',
data: [6, 12, 2, 3, 3, 2, 2,6]
}
]";
echo $out;
这是我的Ajax调用
$.ajax({
url: "gettimedata1.php",
type: 'POST',
}).done(function(msg) {
dataSequence = msg;
data = dataSequence[0].data.slice();
});
它抛出消息"无法读取未定义的属性'slice'"。
我需要做什么来正确格式化PHP输出?
感谢我相信这是从PHP输出json的正确方式
$a = array(
array('name' => 'week1', 'data' => [1, 2, 2, 1, 1, 2, 2, 5]),
array('name' => 'week2', 'data' => [6, 12, 2, 3, 3, 2, 2, 6])
);
$json = json_encode($a);
header('Content-Type: application/json');
echo $json;
你应该能够:
$.ajax({
url: "gettimedata1.php",
type: 'POST'
}).done(function(response) {
data = response[0].data.slice();
});
你可能需要稍微摆弄一下PHP。我没有一个PHP环境来测试,而且我已经好几年没有在它上面写代码了。