2017-04-13 14 views
-1

名前、緯度、経度などの属性を持つJSON配列があります。私はそれらをマーカーとして地図上に配置します。 Googleのオートコンプリートプレース検索を使用して、配列内の「名前」フィールドを検索し、検索に一致するマーカーを表示したいと考えています。これは可能ですか?自分のデータにマーカーを使ってGoogleマップの場所を検索する

//global variables 
var gmarkers1 = []; 
var markers1 = []; 
var infowindow = new google.maps.InfoWindow({ 
    content: '' 
}); 

//add the shipwreck data 
markers1 = [ 
    ["Name","Latitude","Longitude","Year","Type","Type_of_Loss" ], 
    ["Bermuda","46.46483333","-86.64683333","1870","Schooner","Storm" ], 
    ["George","46.516","-86.52083333","1893","Schooner","Storm" ], 
    ["Herman H. Hettler","46.48383333","-86.59966667","1926","Propeller","Storm" ], 
    ["Kiowa","46.64516667","-86.22016667","1929","Propeller","Storm" ], 
    ["Manhattan","46.467","-86.60933333","1903","Propeller","Storm" ], 

]; 


//initiate the map 
function initMap() { 
    // Our markers 


    var center = new google.maps.LatLng(45.2858536, -83.8419731); 
    var mapOptions = { 
     zoom: 6, 
     center: center, 
     mapTypeId: google.maps.MapTypeId.TERRAIN 
    }; 



    map = new google.maps.Map(document.getElementById('map'), mapOptions); 
    for (i = 0; i < markers1.length; i++) { 
     addMarker(markers1[i]); 
    } 
    // map.data.loadGeoJson('data/lakebath.geojson'); 
// map.data.setStyle({ 
// fillColor: 'green', 
// strokeWeight: 1, 
// strokeOpacity: 0.5   
//}); 
} 


//add markers to the map 
function addMarker(marker) {  
    var category_type = marker[4]; 
    var category_loss = marker[5]; 
    var category_year = marker[0]; 
    var title = marker[0]; 
    var pos = new google.maps.LatLng(marker[1], marker[2]); 
    var content = marker[0]; 

    marker1 = new google.maps.Marker({ 
     title: title, 
     position: pos, 
     //setup the categories for the different mark types 
     category_type: category_type, 
     category_loss: category_loss, 
     category_year: category_year, 
     map: map 
    }); 

答えて

1

私はこれが可能であるとは考えていない - GoogleプレイスAPIを使用すると、1つのローカル・維持アレーGoogleの場所ものの、検索ではなく、することができます。

Places APIを使用する代わりに、markers1配列をローカルで検索して、検索用語がマーカー名のsubstringであるかどうかを確認します。

+0

私もそう考えていましたが、私はプログラミングの初心者です。私はそれをどのようにコーディングするのか考えていますか?ありがとうございました。 – timmyblaze

+0

これに似た回答を探す:http://stackoverflow.com/questions/5424488/how-to-search-for-a-string-inside-an-array-of-strings – kaskader

関連する問題