2010-11-16 21 views
7

Ich möchte eine Art von benutzerdefinierten Autocomplete haben und ich dachte, es macht mehr Sinn, jQuery Autocomplete anzupassen. So würde ich gerne wissen:JQuery Autocomplete: Überschreiben Standardverhalten

  1. Wie erzwingen, öffnen Sie die Autocomplete-Liste? $("#autocomplete").trigger('autocompleteopen'); funktioniert nicht.

  2. Wie Sie Ihre eigenen Sachen auf die Liste setzen? Offensichtlich nicht durch source Option, aber von außerhalb es.

Mit anderen Worten: von 1 und 2, Ich möchte eine Liste von alle Optionen haben (nicht von limit begrenzt) und ich will es offen und alle Optionen zeigt, bevor der Benutzer zu schreiben beginnt und unabhängig davon, was der Benutzer eingibt.

Jede Hilfe wäre willkommen.

Prost
Parsa

Antwort

10

Die andere Antwort mir nicht viel helfen (in Bezug auf Ihre Frage 1), aber nach ein bisschen Graben um habe ich die einfachste Weg gefunden, die zur automatischen Vervollständigung Liste zu zwingen, zu öffnen . Alles, was Sie tun müssen, ist einfach die "Suche" -Methode aufzurufen.

Das erste, was Sie tun müssen, ist initilase Ihr zur automatischen Vervollständigung mit einem minlength von 0, etwa so:

$('#autocomplete').autocomplete({ 
    minLength: 0, 
    ... 
}); 

Dann können Sie die Suchmethode rufen die Liste zu öffnen:

$('#autocomplete').autocomplete('search'); 

Hoffentlich hilft dies anderen Menschen bei der Suche nach einer Antwort auf dieses Problem.

+0

Danke! Ich fokussiere es. Ich dachte minLength: 0 würde das passieren lassen, aber es hat nicht funktioniert. $ ("# autocomplete"). focus (function() {$ ("# autocomplete"). autocomplete ('search');}); –