से चुनने के बिना Google मानचित्र API स्वत: पूर्ण खोज मैं Google मानचित्र API और स्वत: पूर्ण खोज सुविधा का उपयोग कर रहा हूं। वर्तमान में, आपको एक स्थान (शहर, राज्य, ज़िप, इत्यादि) टाइप करना शुरू करना होगा और फिर उस स्थान पर मानचित्र के लिए ड्रॉपडाउन से परिणाम का चयन करना होगा। हालांकि, मैं इस मूर्ख प्रमाण को बनाना और इसे स्थापित करना चाहता हूं ताकि अगर कोई सिर्फ एक शहर या सिर्फ एक राज्य टाइप करता है और स्वत: पूर्ण परिणाम चुनने के बिना "प्रवेश" करता है, तो यह अभी भी काम करेगा। उदाहरण के लिए, यदि कोई व्यक्ति "न्यूयॉर्क" टाइप करता है और ड्रॉपडाउन में परिणाम चुनने के बिना "एंटर" हिट करता है, तो यह अभी भी न्यूयॉर्क पर केंद्रित होगा।ड्रॉपडाउन
मुझे लगता है कि यह स्वचालित रूप से चयनित नहीं होने पर स्वत: पूर्ण ड्रॉपडाउन से पहले परिणाम को पकड़कर पूरा किया जाता है।
मैंने फ़ॉर्म जमा करने के लिए एक ईवेंट श्रोता जोड़ा है, लेकिन यह सुनिश्चित नहीं है कि "स्थान" चर में पहला परिणाम कैसे पारित किया जाए।
function searchBar(map) {
var input = document.getElementById('search-input');
var searchform = document.getElementById('search-form');
var place;
var options = {componentRestrictions: {country: 'us'}};
var autocomplete = new google.maps.places.Autocomplete(input, options);
//Add listener to detect autocomplete selection
google.maps.event.addListener(autocomplete, 'place_changed', function() {
place = autocomplete.getPlace();
center = new google.maps.LatLng(place.geometry.location.lat(),place.geometry.location.lng());
map.setCenter(center);
map.setZoom(5);
});
//Add listener to search
searchform.addEventListener('submit', function() {
center = new google.maps.LatLng(place.geometry.location.lat(),place.geometry.location.lng());
map.setCenter(center);
map.setZoom(5);
});
//Reset the inpout box on click
input.addEventListener('click', function(){
input.value = "";
});
};
यहाँ और प्रयोग के लिए एक JSFiddle है:
यहाँ मेरी कोड है।
अच्छा काम करता है, धन्यवाद! – user13286
कोई संदेह नहीं है कि किसी भी धागे में मुझे सबसे अच्छा और स्मार्ट समाधान मिल सकता है। अच्छी तरह से इस हैक की खोज की! –
साझा करने के लिए धन्यवाद। आपका कोड शानदार है! –