从输入框获取地址并将gmap3自动居中到该位置不起作用

时间:2013-10-29 15:32:13

标签: google-maps jquery-gmap3

我想要的是当有人输入地址时,我希望我的地图自动缩放到该位置。这是我的代码:

$(function(){
           $("#main-map").gmap3({
      map:{
        options:{
          center:["newyork"]
        }
      },
      marker:{
        values:[
          {latLng:[48.8620722, 2.352047]},
          {address:"86000 Poitiers, France"},
          {address:"66000 Perpignan, France"}
        ],
      }
    });
    $('#ok').click(function(){


var addr = $('#Address').val();
  if ( !addr || !addr.length ) return;
  $("#main-map").gmap3({
    getlatlng:{
      address:  addr,
      callback: function(results){
        if ( !results ) return;
        $(this).gmap3({
          marker:{                              
            latLng:results[0].geometry.location,

          }
          {action: 'setCenter', args:[ result[0].geometry.location ]}
        });
      }
    }
  });
});

        $('#Address').keypress(function(e){
          if (e.keyCode == 13){
            $('#ok').click();
          }
        });
      });

和html代码

        
<input type="text" placeholder="City, Address, or Zip" name="goToAddress" style="margin-left:5px; width:215px;" id="Address">

开始

我在这里遇到语法错误:   {action:'setCenter',args:[result [0] .geometry.location]}

现在肯定是错的。

1 个答案:

答案 0 :(得分:0)

尝试使用此代码执行setCenter

$("#map").gmap3({
                getlatlng:{
                    address:  $('#input-map').val(),
                    callback: function(results){
                        if ( !results ) return alert("ADDRESS KO");                  
                        $(this).gmap3("get").setCenter(results[0].geometry.location);                           
                    }
                }               
            });