在 Modal 中具有自动完成功能的 Google 地图搜索框

法约希德亚

是否可以在模式中使用自动完成功能的 Google 地图搜索框?不是整个地图,只是搜索框。

像这样的东西:

在此处输入图片说明

法约希德亚

几个小时后,我似乎找到了一种方法:)

HTML:

<div class="modal fade" id="searchModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
    <div class="modal-dialog modal-md" role="document">
        <div class="modal-content">
            <div class="modal-body">
                <div class="md-form ml-0 mr-0">
                    <!-- Autocomplete location search input -->
                    <div class="form-group">
                        <label>Τοποθεσία:</label>
                        <input type="text" class="form-control" id="search_input" placeholder="Αναζήτηση διεύθυνσης..." />
                        <input type="hidden" id="loc_lat" />
                        <input type="hidden" id="loc_long" />
                    </div>
                    <!-- Display latitude and longitude -->
                    <div class="latlong-view">
                        <p style="text-align: center;">
                            <b>Latitude:</b>
                            <span id="latitude_view"></span>
                            <b>| Longitude:</b>
                            <span id="longitude_view"></span>
                        </p>
                    </div>
                </div>
                <div class="text-center mt-4">
                    <button class="btn btn-cyan waves-effect waves-light" onclick="goTo()" style=" font-size: 1.2rem;">
                        <i class="fa fa-search ml-1"></i>
                    </button>
                </div>
            </div>
        </div>
    </div>

Javascript:

/* Google Maps Search handler */
var searchInput = 'search_input';
$(document).ready(function() {
    var autocomplete;
    autocomplete = new google.maps.places.Autocomplete((document.getElementById(searchInput)), {
        types: ['geocode'],
        componentRestrictions: {
            country: "GR"
        }
    });

    google.maps.event.addListener(autocomplete, 'place_changed', function() {
        var near_place = autocomplete.getPlace();
        document.getElementById('loc_lat').value = near_place.geometry.location.lat();
        document.getElementById('loc_long').value = near_place.geometry.location.lng();

        document.getElementById('latitude_view').innerHTML = near_place.geometry.location.lat();
        document.getElementById('longitude_view').innerHTML = near_place.geometry.location.lng();
    });
});

$(document).on('change', '#' + searchInput, function() {
    document.getElementById('latitude_view').innerHTML = '';
    document.getElementById('longitude_view').innerHTML = '';
});

/* Google Maps - Go to searched location */
function goTo() {
    var lat = Number(document.getElementById("latitude_view").innerText);
    var lon = Number(document.getElementById("longitude_view").innerText);

    console.log(lat);
    console.log(lon);
    if (lat != 0 && lon != 0) {
        map.setCenter({
            lat: lat,
            lng: lon
        });
        map.setZoom(18);
    } else
        alert("Μη αποδεκτές συντεταγμένες");
}
/* END of Google Maps Search handler */

请注意,您必须使用场所库才能使其工作。

<script defer src="https://maps.googleapis.com/maps/api/js?key=YOUR_KEY&libraries=places&callback=initMap"></script>

在此处输入图片说明 在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在flutter中创建具有自动完成功能的简单Google地图地址搜索并获取经度和纬度?

如何移动Google地图搜索字段

角谷歌地图搜索框指令:尝试限制搜索时不触发事件(带有自动完成选项)

获取Google地图搜索结果的大小/面积

使用 Puppeteer 抓取 Google 地图搜索结果链接

谷歌地图搜索功能如何触发我在 JavaScript 中的自定义按钮点击(没有自动完成)

来自Google / Bing的具有自动完成功能的自定义框。有什么办法读取接收到的json文件吗?

使用带有动态文本框的Google地方信息自动完成功能

谷歌地图搜索框

Google Maps自动完成功能在地址搜索中不包含邮政编码

Google地方自动完成功能和地图方向是否没有现有的Java类?

选择具有自动完成功能(C#winforms)的文本框中的所有文本

如何在我的android应用中的搜索小部件上实现Google Places自动完成功能?

具有自动完成功能和模糊功能的休眠搜索

搜索框中的Ajax / jQuery自动完成功能(Shopify)

Google地方信息自动完成功能以及Google地图-加载问题

谷歌地图搜索框FOUC

使用 Puppeteer 从 Google 地图搜索结果链接中选择标题和地址

Kendo Grid具有带有自动完成功能的文本框

Google地图不会出现在Bootstrap Modal中

将 Google 地图自动完成功能限制在欧洲边界内

如何在Firefox的搜索栏中使用Google自动完成功能?

Google Place自动完成功能会限制国家/地区搜索结果吗?

google.maps.places。带有JHipster中的模式的自动完成功能

搜索框以搜索标记(Google地图)

放置没有地图界面的自动完成功能

Google Maps API v3:我可以使用ExtJS 4.2在组合框中创建地方自动完成功能吗?

如何在没有地图的情况下使用Google地方信息搜索框?

地方信息自动完成功能会打开一个新的Google搜索叠加层