Javascript “转换文件变量列表”;街道地址;在谷歌地图上添加多个PIN码
我在谷歌地图上尝试将json文件变量(“街道地址”)列表添加到多个PIN时失败了 我的json文件如下所示Javascript “转换文件变量列表”;街道地址;在谷歌地图上添加多个PIN码,javascript,json,html,google-maps,Javascript,Json,Html,Google Maps,我在谷歌地图上尝试将json文件变量(“街道地址”)列表添加到多个PIN时失败了 我的json文件如下所示 { "address_number": { "address": "20 test ct", "time": "10:00 PM", "show_address": "false", "code": "000000" }, "address_number2": { "address": "20 test ct", "time": "10:00
{
"address_number": {
"address": "20 test ct",
"time": "10:00 PM",
"show_address": "false",
"code": "000000"
},
"address_number2": {
"address": "20 test ct",
"time": "10:00 PM",
"show_address": "false",
"code": "000002"
},
"916788": {
"address": "test addy ct",
"date": "0011-11-11",
"time": "11:11",
"show_address": "True",
"code": "11111"
},
"519802": {
"address": "20 test ct",
"date": "",
"time": "",
"show_address": "",
"code": "000000"
},
"586910": {
"address": "20 test ct",
"date": "",
"time": "",
"show_address": "",
"code": "000000"
}
当点击所述pin时,我如何获取(“地址”)并将其转换为地图上的多个pin,而其他数据集作为注释列出
$.ajax({
url: './add_address/data.json',
dataType: 'json',
type: 'get',
cache: true,
success: function (data) {
$(data.address_number).each(function (index, value) {
console.log(value.name);
})
}});
以上是我完成这项任务的唯一想法,除此之外,我几乎迷路了。相关问题:
通过JSON对象进行处理,对其中的每个元素调用:
for (obj in inputJson) {
geocode(obj, inputJson[obj]);
};
在geocode
函数中,在地图的返回地址添加一个标记,并添加一个包含“其他”信息的信息窗口,使用函数闭包(IIFE)将信息窗口中的输入数据与标记关联:
// modified from https://developers.google.com/maps/documentation/javascript/examples/geocoding-simple
function geocode(name, obj) {
geocoder.geocode({
'address': obj.address
}, function(results, status) {
if (status === 'OK') {
bounds.extend(results[0].geometry.location);
map.fitBounds(bounds);
var marker = new google.maps.Marker({
map: map,
position: results[0].geometry.location
});
// modified from https://stackoverflow.com/questions/3059044/google-maps-js-api-v3-simple-multiple-marker-example
google.maps.event.addListener(marker, 'click', (function(marker, obj) {
return function(evt) {
var contentString = '<b>' + name + "</b><br>";
for (attr in obj) {
contentString += attr + ":" + obj[attr] + "<br>";
}
infowindow.setContent(contentString);
infowindow.open(map, marker);
}
})(marker, obj));
} else {
alert('Geocode was not successful for the following reason: ' + status);
}
});
}
html,
身体,
#地图画布{
身高:100%;
宽度:100%;
边际:0px;
填充:0px
}
您试过什么吗?请显示您的代码。$.ajax({url:'./add_address/data.json',dataType:'json',type:'get',cache:true,success:function(data){$(data.address_number).each(function(index,value){console.log(value.name);});这里有一个很好的例子:唯一的问题是,他硬编码了coords,我想得到帮助的是从json文件中获取多个地址,然后将地址转换为coords。谷歌地图部分我已经在包里了。有什么建议吗?