在函数JS中使用地理编码创建标记

时间:2015-12-20 09:13:16

标签: javascript google-maps google-maps-api-3

所以,我想在我的谷歌地图上创建一个标记。在我的页面html / jsp我有地图的代码,我调用函数js:createOfficiel(address,map); 在这个函数中,我试图对字符串地址进行地理编码,并根据地理编码创建一个标记。但它似乎不起作用,你能告诉我为什么吗? 谢谢:))

这是我的函数.js:

function createOfficiel (address, map){
var address = document.getElementById('address').value;
var officiel = 'images/officiel.png'; 
var geocoder = new google.maps.Geocoder();
    if (geocoder) {
        geocoder.geocode({"address": address}, 
        function(results) {
               var marqueurOfficiel = new google.maps.Marker({
               position: results[0].geometry.location,
               map: map,
               icon: officiel,
               optimized: false
               });
        });

   }
}

1 个答案:

答案 0 :(得分:-1)

我刚刚找到它,主要问题_我认为_是标记的位置值。我在lat + lng中分割了这个位置。

所以这里是代码工作:

function createOfficiel (address, map){
var officiel = 'images/officiel.png'; 
var geocoder = new google.maps.Geocoder();
    if (geocoder) {
           geocoder.geocode({
           "address": address}, 
           function(results) {
                var lat = results[0].geometry.location.lat();
                var lng = results[0].geometry.location.lng();
                var marqueurOfficiel = new google.maps.Marker({
                     position: {
                             lat: lat, 
                             lng: lng
                     },
                     map: map,
                     icon: officiel,
                     optimized: false
                });
         });

}

}