22

Mam pewne problemy z autouzupełnianiem jQuery i przenoszeniem DownArrow i UpArrow?jQuery UI Autouzupełnianie DownArrow UpArrow

Problem wydaje się, że

<input id="autocomplete-input" value="">

focus: function (event, ui) { 
     $('#autocomplete-input').val(ui.item.label); 
} 

Działa to doskonale dla myszy naciskiem - ale kiedy używam arrowUp i arrowDown - ona wybiera ui.item.id przekraczającą ui.item.label

Jak mogę to naprawić, aby:

  1. the input val nie jest zmieniany w ogóle [tj. Utrzymuje użytkownikom wprowadzonego terminu]
  2. aktualizuje input val z focused val użytkownik jest z keydown/keyup

dzięki

Odpowiedz

52

upewnij się, aby zapobiec domyślne zachowanie zdarzenia focus :

focus: function (event, ui) { 
    this.value = ui.item.label; 
     // or $('#autocomplete-input').val(ui.item.label); 

    // Prevent the default focus behavior. 
    event.preventDefault(); 
     // or return false; 
} 
+0

aha! niesamowite dzięki tak bardzo @andrew - zupełnie zapomniałem tego spróbować :) – Andy

+0

@Andy: Cieszę się, że pomogłem ':)'. –

+0

To działa, ale jeden problem, gdy klawisz (w górę/w dół) jest w zaznaczonym polu tekstowym pokazuje wartość, a nie etykietę, ale po naciśnięciu wprowadź ponownie jego wartość pokazując wartość – TBAG

Powiązane problemy