Google Places Autocomplete - Wählen Sie das erste Ergebnis auf der Eingabetaste?

Ich bin mit einem Google Places Autocomplete und ich möchte einfach Sie zu wählen Sie das oberste Element in der Liste der Suchergebnisse, wenn Sie die enter-Taste gedrückt wird, wird in das Formularfeld und Vorschläge vorhanden sind. Ich weiß, das wurde vorher gefragt:

Google maps Places API V3 AutoVervollständigen - wählen Sie die erste option, geben Sie auf

Google maps Places API V3 AutoVervollständigen - wählen Sie die erste option auf die EINGABETASTE (und haben es auch so bleiben)

Aber die Antworten, die in diesen Fragen scheinen nicht wirklich arbeitet, oder Sie befassen sich mit spezifischen Funktionen Hinzugefügt.

Es scheint auch wie etwas, das wie folgt funktionieren sollte (aber nicht):

$("input#autocomplete").keydown(function(e) {
  if (e.which == 13) {          
    //if there are suggestions...
    if ($(".pac-container .pac-item").length) {
      //click on the first item in the list or simulate a down arrow key event
      //it does get this far, but I can't find a way to actually select the item
      $(".pac-container .pac-item:first").click();
    } else {
      //there are no suggestions
    }
  }
});

Anregungen würde sehr geschätzt werden!

Kommentar zu dem Problem
Sie hätten die Nutzung des google.maps.Orte.AutocompleteService Klasse und Lesen die AutocompletePrediction manuell: developers.google.com/maps/documentation/javascript/... Kommentarautor: Marcelo
@Mubix akzeptierte Antwort auf die zweite Frage, die Sie im Zusammenhang mit abdeckt, was gebraucht zu sein scheint, mit der Zugabe von ein paar extra-Funktionen, die sich leicht abgestreift. Nach dieser demo, die ich gerade Gabel aus dem oben genannten tut er genau das: jsfiddle.net/Ut2U4/1 Kommentarautor: Craig Blagg
@CraigBlagg Dank! Ich habe die arbeiten schließlich. Nicht sicher, warum es nicht funktioniert hat das erste mal herum, aber die Neuerstellung line-by-line bekam das gewünschte Ergebnis! Kommentarautor: NChase
Toll. Seltsam, es funktionierte nicht auf Anhieb (scheint zu funktionieren hier). Aber froh, dass es geklappt hat @NChase Kommentarautor: Craig Blagg
@CraigBlagg, in Ihrer Probe (jsfiddle.net/Ut2U4/1), ist es notwendig, um sicherzustellen das 'keypress' - Ereignis wird aus dem Dokument entfernt, wenn 'focusout' ausgelöst wird (Zeile 14). Sonst, Sie befestigen Sie es auf das Dokument jedes mal, wenn Eingabe Fokus erhalten. Kommentarautor: Nik Sumeiko

InformationsquelleAutor der Frage NChase | 2013-01-30

Schreibe einen Kommentar