首先,准备json数据源。我用的php进行后台程序开拓,从mysql数据库读取数据。通过json_encode()函数对数据进行JSON编码,中文涌现乱码问题。这是由于json_encode()只支持UTF-8编码,以是利用内置的JSON_UNESCAPED_UNICODE选项逃过编码,json_encode($result,JSON_UNESCAPED_UNICODE)。
其次,ajax 的$.getJSON(url, function(data) {}函数获取php中get要求发送的json工具。json工具包括两种:{\公众key\"大众:\公众value\"大众}形式的键值对和[{\"大众key\"大众:\"大众value\"大众},{\"大众key\公众:\"大众value\公众},{},{}]数组形式。
问题1:获取json数据长度问题。{\公众key\公众:\公众value\"大众}形式的的json工具不能直接调用length函数获取长度。

function getJsonLength(jsonData){
var jsonLength = 0;
for(var item in jsonData){
jsonLength++;
}
return jsonLength;
}
[{\"大众key\"大众:\"大众value\"大众},{\"大众key\公众:\"大众value\"大众},{},{}]数组形式可以通过length函数获取长度。
问题2:虽然已经获取到data json工具,但是highcharts便是不显示数据。由于此时数据是字符串,须要将工具值转换为数值。
outdoor_options.xAxis.categories[i] = data[i].date;
outdoor_options.series[0].data[i] = parseFloat(data[i].outdoor);//parseFloat()函数将返回的字符类型转换为浮点数,很关键