在echarts制作地图时,使用到geoCoordMap,其格式如下:
var geoCoordMap = { "舟山":[122.207216,29.985295], "齐齐哈尔":[123.97,47.33], "盐城":[120.13,33.38], "拉萨":[91.11,29.97], "南宁":[108.33,22.84], }
这是一组非数组,非标准JSON格式的非常规对象,如果利用ajax获取后使用字符串拼接,是无法显示字符串到对象的转化的,该方案放弃。
success: function (res) { if (res.data) { var arr = res.data; for (var j = 0; j < arr.length; j++) { a1 += "\"" + arr[j].name + "\":[" + arr[j].lon + "," + arr[j].lat + "],"; }
目前的解决方案,是直接通过后台生成geoCoordMap.js文件,内部按照其格式开发,前端直接调用:
<!--所有位置信息的geoCoordMap,需提前生成--> <script type="text/javascript" src="js/geoCoordMap.js"></script>
Done!