2012-06-23 4 views
6

Sto utilizzando il popolare plug-in di completamento automatico JQuery di seguito.menu a discesa del trigger completamento automatico jquery sull'ingresso: focus

http://jqueryui.com/demos/autocomplete/

Attualmente se si digita una frase compare in fondo alla discesa, ma quando si fa clic di distanza si nasconde. Questo va bene. Tuttavia, l'unico modo per riportare il menu a discesa è fare clic nel campo di immissione e digitare altri caratteri o premere keydown.

Qualche idea su come attivare il dropdown dei risultati quando l'utente fa clic nel campo di input? Ho provato ad attivare l'evento di messa a fuoco per il campo di input, ma ciò non funziona. In qualche modo ho bisogno di chiamare manualmente l'evento a discesa automatica quando il campo di input è focalizzato. Grazie.

risposta

24

demo funzionantehttp://jsfiddle.net/CNYCS/

fredda; quindi tutto ciò che devi fare è l'evento di messa a fuoco bind con il completamento automatico, il completamento automatico di rest resterà attivo da lì come puoi vedere nella demo.

link utili: http://forum.jquery.com/topic/how-to-bind-focus-input-to-trigger-autocomplete&http://docs.jquery.com/UI/Autocomplete#method-search

Spero che questo aiuti,

codice di riposo è in jsfiddle.

codice

$("#tags").autocomplete({ 
     source: availableTags, 
     minLength:0 
    }).bind('focus', function(){ $(this).autocomplete("search"); }); 
+1

Grazie a questo funziona splendidamente – leejmurphy

+1

Fantastico! trovato questo da google, esattamente quello che mi serve :) – Tallboy

+1

Dolce! Esattamente quello di cui ho bisogno! Funziona come un fascino! –

2

Non esiste un modo ovvio per farlo secondo il doc. Ma si può provare con focus (o click o keyup) evento sul autocomplete abilitato textbox:

$('#autocomplete').trigger("keyup"); 

o

$('#autocomplete').trigger("focus"); 

o

$('#autocomplete').trigger("click"); 

Come @Tats_innit menzionato il codice , dopo di che è sufficiente aggiungere la riga

$('#tags').trigger("focus"); // as @Tats_innit's solution bind focus 
          // so you need to trigger focus 

DEMO

+0

++ 1 nuovo uomo ':)' contento in questi giorni non sto JINX-ing soluzione con la vostra: P diff demo sotto per OP comunque +! –

+0

Grazie, una combinazione dei due ha funzionato per me. – leejmurphy