簡體   English   中英

Google Maps Api Fusion Table選擇名稱等於變量的幾何

[英]Google Maps Api Fusion Table select geometry where name equals variable

基本上,我想將inputValue變量傳遞到融合表查詢中,以查找“名稱”列的值等於inputValue的幾何。

我只需要知道該如何寫。 任何幫助將不勝感激。 下面的代碼:

jQuery(document).ready(function($) {

//   function init() {

var baseLatLng = new google.maps.LatLng(52.7713,-1.5550);
var newLatLng;

var map = new google.maps.Map(document.getElementById('map'), {
    zoom: 12,
    center: baseLatLng
});

var searchOptions = {
    center: baseLatLng,
    mapTypeID: 'roadmap',
    componentRestrictions: {country: "uk"}
};

var input = document.getElementById('search');

var autocomplete = new google.maps.places.Autocomplete(input, searchOptions);

var inputValue = document.getElementById('search').value;

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

$("#go").click(function(event) {
    event.preventDefault();
    geocodeAddress(geocoder);
    layer.setMap(map);

});


function geocodeAddress(geocoder) {
    var address = document.getElementById('search').value;
    geocoder.geocode({address: address, region: 'uk'}, function(results, status) {
        if (status === 'OK') {
        } else {
            alert('Geocode was not successful for the following reason: ' + status);
        }
        var latitude = results[0].geometry.location.lat();
        var longitude = results[0].geometry.location.lng()
        newLatLng = latitude + ',' + longitude;
        document.getElementById('results').innerHTML = "latitude:" + latitude + "<br>" + "longitude:" + longitude;

    });
}

var layer = new google.maps.FusionTablesLayer({
    query: {
        select: 'Geometry',
        from: 'xxxx',
        where: "'Name' = inputValue" ---HERE!
    },
    styles: [{
        polygonOptions: {
            fillColor: '#00FF00',
            fillOpacity: 0.3
        }
    }]
});
});

謝謝,奧莉

找出解決方案。 以后我會留給任何人使用。

function getBoundry() {
        var address = document.getElementById('search').value;
        var query = "\"\'Name\' =  " + "\'" + address + "\'" + '\"'; 

        var layer = new google.maps.FusionTablesLayer({
            query: {
                select: 'Geometry',
                from: 'xxxxx',
                where: query
            },
            styles: [{
                polygonOptions: {
                    fillColor: '#00FF00',
                    fillOpacity: 0.3
                }

            }]

        });
        layer.setMap(map);
    }

然后在點擊事件中調用該功能。

$("#go").click(function(event) {
        event.preventDefault();
        getBoundry();

    });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM