如何从地理自动完成对象和 google api V2 获取纬度/经度?

发布于 2024-10-20 08:44:20 字数 794 浏览 1 评论 0原文

我正在尝试使用 jQuery、jquery.autocomplete_geomod 和 geo_autocomplete 插件以及 Google Maps API V2 来实现地理自动完成。

与此同时,我们正在迁移到 V3,所以不要害怕说我的问题是由于版本 2 造成的。

因此,我需要自动完成返回的纬度/经度,以使我的地图在此坐标上居中。 ..但我没有成功做到这一点!

这是我的代码的一部分。请随时向我提问。

$().ready(function() {

    var mygc = new google.maps.Geocoder();

    var loc = $('#location').geo_autocomplete(mygc, {
        mapkey: '<?$GOOGLE_KEY?>',
        ...
        geocoder_address: true

      }).result(function(_event, _data){
         //if(_data){
                    alert("test");
                    alert( "latitude : " + results[0].geometry.location.lat() );
          //}
                   //alert( "longitude : " + results[0].geometry.location.lng() );
        });

    });

问候,

来自法国的纪尧姆

I'm trying to implements the geo-autocomplete with the jQuery, jquery.autocomplete_geomod and geo_autocomplete plugins and the Google Maps API V2.

In parallel, we're migrating to the V3, so don't be scared to say that my problem is due to the version 2.

So, I need the lat/long returned by the autocomplete, to center my map on this coordinates... but I didn't success to do that !

There's a part of my code. Don't hesitate to ask me questions.

$().ready(function() {

    var mygc = new google.maps.Geocoder();

    var loc = $('#location').geo_autocomplete(mygc, {
        mapkey: '<?$GOOGLE_KEY?>',
        ...
        geocoder_address: true

      }).result(function(_event, _data){
         //if(_data){
                    alert("test");
                    alert( "latitude : " + results[0].geometry.location.lat() );
          //}
                   //alert( "longitude : " + results[0].geometry.location.lng() );
        });

    });

Regards,

Guillaume from France

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

焚却相思 2024-10-27 08:44:20

ui.geo_autocomplete.js 中,将位置变量 _location = _result.geometry.location 添加到 _parsed 结果中。

像这样:

_parsed.push({
    value: _place,
    label: _result.formatted_address,
    viewport: _result.geometry.viewport,
    location: _location
});

然后您可以从 _ui.item.geometry.location 访问它。

In ui.geo_autocomplete.js add a location variable _location = _result.geometry.location to the _parsed results.

Something like this:

_parsed.push({
    value: _place,
    label: _result.formatted_address,
    viewport: _result.geometry.viewport,
    location: _location
});

Then you can access it from _ui.item.geometry.location.

小…红帽 2024-10-27 08:44:20

使用 location: _result.geometry.location 扩展第 73 行的 ui.geo_autocomplete.js

_parsed.push({
value: _place,
label: _result.formatted_address,
viewport: _result.geometry.viewport,
location: _result.geometry.location
 });

您可以使用alert() 方法访问这些变量,如下所示:

$('#stadt').geo_autocomplete({
    geocoder_region: 'Germany',
    geocoder_types: "locality,political,sublocality,neighborhood",
    mapheight: 100, mapwidth: 200, maptype: 'hybrid',
     select: function(event, ui) {
    alert(ui.item.location);
    return false;
}

})

Extend the ui.geo_autocomplete.js at line 73 with location: _result.geometry.location:

_parsed.push({
value: _place,
label: _result.formatted_address,
viewport: _result.geometry.viewport,
location: _result.geometry.location
 });

You can access these variable for example with the alert() method like this:

$('#stadt').geo_autocomplete({
    geocoder_region: 'Germany',
    geocoder_types: "locality,political,sublocality,neighborhood",
    mapheight: 100, mapwidth: 200, maptype: 'hybrid',
     select: function(event, ui) {
    alert(ui.item.location);
    return false;
}

})
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文