ym.modules.AutoComplete

Es ist eine aktuellere Version des Autocompletes verfügbar. Bitte benutzen Sie für Ihre zukünftigen Projekte die Version 5 des Autocompletes.

Initialisierung

So initialisieren Sie die Autocomplete-Komponente:

Codebeispiel: Initialisierung Autovervollständigung

// Erzeuge die Klasse direkt.
var autocomplete1 = new ym.modules.AutoComplete('#autocomplete1',
{
	dataType: "jsonp",
	onSelected: function(geoJson){
		geocoder.geocode(geoJson.properties.location);
	}
});

// Verwende die Factory, um die Instanz zu erzeugen.
var autocomplete2 = ym.modules.autoComplete('#autocomplete2',
{
	dataType: "jsonp",
	onSelected: function(geoJson){
		geocoder.geocode(geoJson.properties.location);
	}
});

Constructor(selector, settings)

Parameter: selector

Im Feld des Selektors kann ein jQuery-Objekt oder ein CSS3-Selektor übergeben werden, der auf das Eingabefeld für das Autocomplete verweist.

Parameter: settings

Name Beschreibung Datentyp Standardwert
limit Maximale Anzahl an Treffern, die im Autocomplete angezeigt werden sollen. string 8
url Die URL zum Autocomplete-WebService. string https://autocomplete.yellowmap.de/
Autocomplete/Search
dataType Es gibt 3 Datentypen: "json""jsonp" und "protobuf". string "json"
locales

Die Länder, in denen gesucht werden soll: Es kann eine Zeichenfolge mit einem Ländercode übergeben werden oder ein Array mit beliebig vielen Ländercodes. Wird locales komplett leer gelassen, wird in allen Ländern gesucht.

Google Maps
Verwendet man SmartMaps zusammen mit Google Maps können im Moment nur 5 Ländercodes übergeben werden.

  string
onInit(address, query) Das Event onInit wird aufgerufen, wenn ein Autocomplete-Aufruf gestartet wird. event  
onSuggestion(geoJson, query) Sobald eine Liste von Treffern empfangen wird, wird onSuggestion aufgerufen. Sie erhält ein GeoJson und die Suchanfrage. event  
onEmpty(query) Falls gar keine Treffer über das Autocomplete ermittelt werden konnte, wird onEmpty aufgerufen. Hier wird nur die Suchanfrage wieder zurückgeliefert. event  
onSelected(geoJson, query) Die Auswahl eines Treffers in der Autocomplete-Vorschlagsliste löst onSelected aus. Dieses Ereignis liefert ein GeoJson und die Suchanfrage zurück. event  
onError(error) Falls ein serverseitiges Problem oder ein Problem mit der Datenverbindung besteht, wird dieses Ereignis ausgelöst. event  

Methoden

setMap(map) ab v3

Registriert eine Karte für die Suche des Autocomplete. Wenn die Karte im Autocomplete registriert ist, wird für die Lokalisierung automatisch das Rechteck des Kartenausschnitts als Suchbereich verwendet.

Codebeispiel: setMap(map)

autocomplete.setLatLng(ym.latLng(49, 10));

removeMap() ab v3

Entfernt die registrierte Karte aus der Suche des Autocomplete. Durch das Entfernen der Karte gibt es keine örtliche Eingrenzung mehr.

setLatLng(latLng) ab v3

Definiert einen Suchbereich mit Hilfe des in den Optionen gesetzten Radius, in dem die Suchanfrage ausgeführt werden soll.

Codebeispiel: setLatLang(latLng)

var autocomplete = ym.modules.autoComplete(element, settings);
autocomplete.setMap(map); 

setBounds(latLngBounds) ab v3

Definiert einen Suchbereich anhand eines Suchrechtecks.

Codebeispiel: setBounds(latLngBounds)

autocomplete.setBounds(ym.latLngBounds(ym.latLng(49, 10), ym.latLng(50, 11));

getLatLng() ab v3

Falls vorhanden, wird ein LatLng-Objekt zurückgeliefert, welches den Mittelpunkt des Suchrechtecks definiert. Falls kein Suchrechteck definiert ist, wird undefined zurückgegeben.

getBounds() ab v3

Falls vorhanden, wird ein LatLngBounds-Objekt zurück geliefert, welches das Suchrechteck definiert. Falls kein Suchrechteck definiert ist, wird undefined zurückgeliefert.