通过后台数据在百度地图标记多个点

最近有功能需求,需要在百度地图上将所有的网点进行显示。建立后台数据库将所有机构的名称及经纬度信息进行存储,通过Jquery后台交互得到数据,参照 中设置方案很好实现,其中遇到的问题就是如何解决:

var markerArr = [{ title: "名称:武汉光谷", point: "114.4204800000, 30.4637200000", address: "光谷广场", tel: "12306" },  { title: "名称:武汉汉口", point: "114.2549200000,30.6188900000", address: "汉口齐测试 ", tel: "18500000000" },{ title: "名称:武汉火车站", point: "114.4044400000,30.5074100000", address: "武汉火车站的吧房间", tel: "18500000000" }, { title: "名称:武汉纺织大学", point: "114.3982300000,30.4857900000", address: "武汉天河广场", tel: "18500000000" } ];

这段的问题。通过后台可以生成并传送过来类似:

[{ title: “名称:武汉光谷”, point: “114.4204800000, 30.4637200000”, address: “光谷广场”, tel: “12306” },{ title: “名称:武汉汉口”, point: “114.2549200000,30.6188900000”, address: "汉口齐测试 ", tel: “18500000000” },{ title: “名称:武汉火车站”, point: “114.4044400000,30.5074100000”, address: “武汉火车站的吧房间”, tel: “18500000000” },{ title: “名称:武汉纺织大学”, point: “114.3982300000,30.4857900000”, address: “武汉天河广场”, tel: “18500000000” }];

**但是直接赋值给 markerArr 好像不起作用。

解决方案:
通过json对象,用eval()方法将返回数据转换成对象,即

 markerArr = eval(data);//这里非常重要   data 为jquery返回的数据

这样就可以得到相应的数据进行处理了。**

具体参考:
https://www.cnblogs.com/wanf/p/7448725.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
假设你使用的是 Google 地图,你可以按照以下步骤实现: 1. 在你的 HTML 文件里添加一个包含地图的 div 元素和 Google 地图 API: ```html <div id="map"></div> <script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY"></script> ``` 2. 创建一个包含经纬度的数组: ```javascript var locations = [ {lat: 37.7749, lng: -122.4194}, {lat: 40.7128, lng: -74.0060}, {lat: 51.5074, lng: -0.1278} ]; ``` 3. 在 JavaScript 文件里创建一个 Google 地图对象,并将它放到之前创建的 div 元素里: ```javascript var map = new google.maps.Map(document.getElementById('map'), { zoom: 4, center: {lat: 37.7749, lng: -122.4194} }); ``` 这个例子将地图缩放级别设置为 4,并将中心设置为 San Francisco。 4. 创建一个用于标注的 marker 对象的数组: ```javascript var markers = locations.map(function(location, i) { return new google.maps.Marker({ position: location, label: (i + 1).toString(), map: map }); }); ``` 这个例子将在地图上创建 3 个 marker,分别标注了 San Francisco、New York 和 London 的位置。每个 marker 的 label 属性设置为它们在数组中的索引加 1。 完整示例代码: ```html <div id="map"></div> <script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY"></script> <script> var locations = [ {lat: 37.7749, lng: -122.4194}, {lat: 40.7128, lng: -74.0060}, {lat: 51.5074, lng: -0.1278} ]; var map = new google.maps.Map(document.getElementById('map'), { zoom: 4, center: {lat: 37.7749, lng: -122.4194} }); var markers = locations.map(function(location, i) { return new google.maps.Marker({ position: location, label: (i + 1).toString(), map: map }); }); </script> ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值