JQuery Autocomplete option schließen, wenn Sie außerhalb
Ich würde gerne wissen, ob es einen Weg gibt, bei JQuery Autocomplete, wenn Sie geöffnet ist, die Optionen, wenn ich Sie AUßERHALB der Optionen auswählen, oder klicken Sie auf die FLUCHT in die Tastatur. Es schließt, ohne zu müssen, wählen Sie eine option.
Jemand wissen, der richtige Weg, es zu tun? Dachte immer noch, mit so etwas zu prüfen, wenn der Fokus der autocomplete , wenn nicht, um es zu schließen, ist aber nur eine IDEE.
Dank
Ist es nicht die default-Aktion? Könnten Sie formulieren Ihre Frage, wie es ist sehr schwer zu verstehen, was Sie sind, nach?
Naja, nicht wirklich, wenn Sie firefox verwenden. Gehen Sie mit firefox, und testen Sie dieses Beispiel jsfiddle.net/3Yz9f , ein s und dann auf enge. Noch Optionen, die gleiche, wenn Sie drücken Sie die Taste ESC.
Jetzt weiß ich, was du meinst, aber Sie erwähnte nicht ein Wort über den dialog in Frage (andere als die tags....). Siehe meine Antwort unten.
Denn das problem ist mehr zum abfangen des Ereignisses außerhalb "AutoVervollständigen" und wenn das so ist ...in der Nähe von AutoVervollständigen.
Naja, nicht wirklich, wenn Sie firefox verwenden. Gehen Sie mit firefox, und testen Sie dieses Beispiel jsfiddle.net/3Yz9f , ein s und dann auf enge. Noch Optionen, die gleiche, wenn Sie drücken Sie die Taste ESC.
Jetzt weiß ich, was du meinst, aber Sie erwähnte nicht ein Wort über den dialog in Frage (andere als die tags....). Siehe meine Antwort unten.
Denn das problem ist mehr zum abfangen des Ereignisses außerhalb "AutoVervollständigen" und wenn das so ist ...in der Nähe von AutoVervollständigen.
InformationsquelleAutor Ricardo Rodrigues | 2011-09-13
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nur schließen das AutoVervollständigen, wenn das Dialogfeld geschlossen ist:
In Aktion sehen: http://jsfiddle.net/william/3Yz9f/1/.
Update
Es hängt davon ab, was Sie bedeuten, indem Sie "allgemein". JavaScript ist sehr viel event-orientiert. Also, zunächst, möchten Sie AutoVervollständigen zu schließen, wenn der dialog geschlossen ist, damit der erste Teil der Antwort. Sicher, Sie können binden Sie es um einige indirekte Ereignisse, wie autocomplete verwischen oder ausblenden von (möglicherweise müssen Sie ein benutzerdefiniertes Ereignis für die Haut), aber das gibt Ihnen ein bisschen die Gefahr, dass Sie möglicherweise nicht ausgelöst werden, wie Sie sind indirekt.
Nun wollen Sie es zu schließen, wenn der dialog gezogen; nun, das ist nicht schwer, entweder; Sie können dies erreichen, mit der
dragStart
Veranstaltung für den dialog, aber Sie sind zwei verschiedene Ereignisse, die beide auf Dialoge, nicht AutoVervollständigen. Ich sehe keine indirekte Ereignis auf autocomplete-widget von selbst, wenn der dialog gezogen wird.Wenn Ihr Problem bezieht sich auf die autocomplete-widgets-ID, können Sie ein Kontext-basierte Selektor, wie z.B. die Nutzung
$('.ui-autocomplete-input', this)
eher als$('#tags')
im Dialogfeld event-Handler.Da löst eines der Probleme, zum Beispiel, wenn Sie klicken Sie auf ziehen Sie den dialog , die er nicht schließen.
siehe aktualisierte Antwort...
Diese Lösung hatte ich schon gedacht, aber danke ... nicht zu sehen, einen besseren Weg (für jetzt) , ohne mit dragstart-und schließen-Funktion. Aber danke
hum....es wäre schön gewesen, wenn Sie gesagt in Ihrer Frage, was Sie versucht hatte, so hätte es diesen Prozess effizienter.
InformationsquelleAutor William Niu
Ich lief in das gleiche problem. Es gibt nur eine kleine Sache, die Sie tun müssen.
Nach dem aufrufen der "Suche" - methdod, setzen Sie den Fokus. Die Esc-Taste, und klicken Sie außerhalb der box wird in der Nähe der dropdown-Liste.
Bin ich über die Kategorie-Unterklasse (http://jqueryui.com/demos/autocomplete/#categories)
also mein code sieht wie
Erwarte ich, dass es funktionieren wird, das gleiche auf die .autocomplete-widget, wie gut.
Die genaue Lösung für das problem, das ich versuche zu lösen!
InformationsquelleAutor Sentient