Ich möchte jede Instanz von jQuerys Autocomplete-Plugin auf jeder Seite anders gestalten. Außer mir kann ich nicht herausfinden, wie man die Stile so einstellt, dass sie für jede Instanz unterschiedlich sind. Ich kann nicht scheinen, die ac_ * Stile innerhalb eines div zu wickeln, um sie vom CSS zu identifizieren. Jede Veränderung, die ich mache, betrifft beides. Irgendwelche Ideen?
Danke.
Ich denke, Sie werden feststellen, dass Ihr Problem darin besteht, dass die Dropdown-Liste für die automatische Vervollständigung nicht in Ihrem Platzhalter enthalten ist ... Beispiel:
%Vor%Wenn die Ergebnisse zurückkommen, wird der Seite ein neues div hinzugefügt, um die Ergebnisse anzuzeigen - aber nicht innerhalb Ihrer "differentStyle" -Division. Es wird nur am Ende des DOM hinzugefügt. Zum Beispiel:
%Vor%Wenn ich die Dokumentation lese, würde ich sagen, dass es den Stil für zwei automatische Vervollständigungsfelder auf der gleichen Seite unmöglich machen würde:
Ich habe gerade festgestellt, dass Sie den UL-Container leicht greifen können, wenn Sie jQuery UI 1.8 verwenden. Um den UI-Container in 1.8 zu erfassen, fügen Sie Ihrer geöffneten Methode einfach Folgendes hinzu:
%Vor% Sie können die Methode _renderMenu
neu schreiben. Nehmen Sie Ссылка als Beispiel.
War auf der Suche nach etwas anderem, als ich über diesen Beitrag hinweg ... Dies gelang mir, indem ich die folgenden Autocomplete-Ereignisse abfing und meine eigene Klasse in das Äußere der Autocomplete-Ausgabe einfügte. Verwenden Sie dann CSS, um die Elemente nach Bedarf zu formatieren. Hoffe das hilft jemandem.
%Vor%Beispiel css:
%Vor%Auch als Teil meiner JSON-Ergebnisse gebe ich einfach die HTML-Shell (von meiner JAVA AJAX Action) zurück, wobei das Ergebnis als Teil des eigentlichen JSON-Ergebnisses eingebettet ist. Auf diese Weise kann ich um jedes Ergebnis ein ausgeklügeltes HTML erstellen und dann die oben beschriebene Methode verwenden, um sie so zu formatieren, wie ich es möchte.
In neueren Versionen wurde "appendTo" hinzugefügt, sodass Sie ein übergeordnetes Element für die Vorschlagsliste auswählen können. Sie könnten verschiedene Eltern (mit einem In oder einer Klasse) für Ihre Listen erstellen.
Als ich dieses Problem hatte, fand ich heraus, dass jquery-ui jeder Instanz eine eindeutige ID gibt, nämlich # ui-id-1, # ui-id-2, wobei die erste Autovervollständigung in dom die Nummer 1 erhält. die zweite Nummer 2 und so weiter. Wenn also die Reihenfolge der Autokomplettierungen bekannt ist, können verschiedene Stile auf die verschiedenen IDs angewendet werden.
Tags und Links jquery autocomplete jquery-autocomplete