Ich bin mir nicht sicher, ob dies irgendwo besprochen wurde, aber ich konnte es in der Dokumentation nicht finden und fragte mich, ob es möglich wäre, das Such-Eingabefeld nicht mit dem ausgewählten jQuery-Plugin (das zum Auswählen von Eingaben verwendet wird) hinzuzufügen. Im Besonderen möchte ich die Standardauswahl ohne verwenden.
Nun, ich habe es auch mit der Dokumentation versucht und hatte kein Glück, also habe ich es endlich behoben
$ ('. chzn-search'). hide ();
Ich mache das oben, nachdem ich auserwählt habe . Hoffe das hilft
Nur ein kurzes Follow-up: Ich habe das in Funktion bemerkt
AbstractChosen.prototype.set_default_values
eine Variable wird gelesen
this.options.disable_search
So können Sie das Suchfeld mit deaktivieren
jQuery('select').chosen( {disable_search: true} );
ohne einen festen Schwellenwert zu verwenden.
$(".chzn-select").chosen({disable_search_threshold: 3});
Wenn die Anzahl der Elemente der Auswahl kleiner ist als disable_search_threshold (hier 2 und weniger), wird das Suchfeld nicht angezeigt.
Ich füge meinem Stylesheet eine Klasse hinzu.
.chzn-select { display: none }
Alternativ kann ich für einzelne Elemente das Element angeben und _chzn
anhängen, um es als Ziel festzulegen.
#element_chzn .chzn-select { display: none; }
Beachten Sie Folgendes: selected konvertiert Bindestriche in Ihren Element-IDs und -Klassen in Unterstriche, sodass Sie element-id
als Ziel verwenden möchten.
#element_id_chzn .chzn-select { display: none; }
Neuere Versionen von Jquery haben die Möglichkeit, die Sucheingabe mit Dropdown zu deaktivieren.
$(".chzn-select").chosen({
disable_search: true
});
Ältere Versionen unterstützen diese Option nicht. Wie, wenn Sie strengere Version nicht verwenden dürfen, als Sie verwenden können
$(".chzn-select").chosen({
disable_search_threshold: 5
});
das Suchfeld wird ausgeblendet, wenn die Ergebnisse unter 5 liegen. Dies ist am besten für Dropdowns nach Geschlechtstyp geeignet. Es gibt einen anderen Weg, dies zu korrigieren.
$(".chzn-select").chosen();
$(".chzn-select").hide();
Rufen Sie gleich nach der Initialisierung den Befehl hide auf, wissen Sie nicht, warum dieser Trick funktioniert, aber er tut, was Sie wollen!
Ich empfehle Ihnen, die neueste Version zu verwenden, damit Sie auf die neuesten Optionen zugreifen können.
Ich hoffe es funktioniert für Sie!
Verwenden Sie diesen Code, um ihn zu deaktivieren:
jQuery('select').chosen( {disable_search: true} );
und vergesst nicht, es zu verstecken, sonst funktioniert es immer noch auf dem Handy!
.chzn-search{display: none}
$('select').chosen( {disable_search: true} );
Die Option disable_search_threshold
verbirgt das Suchfeld für Dropdowns mit Einzelauswahl. Die übergebene Nummer gibt an, wie viele Elemente Sie zulassen möchten, bevor das Suchfeld angezeigt wird. Wenn Sie das Suchfeld nicht wünschen, setzen Sie es einfach auf eine höhere Anzahl als die Anzahl der Elemente, die es jemals enthalten wird.
$('#myDropDown').chosen({ disable_search_threshold: 10 });
Da keine der gewählten Einstellungen zum Ausblenden des Suchfelds für mehrere Auswahl zu funktionieren schien, habe ich die selected.jquery.js in Zeile 577 wie folgt gehackt:
<li class="search-field"><span class="placeholder">' + this.default_text + '</span></li>
(Span anstelle des Eingabefeldes). Muß auch diese Zeile auskommentieren
this.search_field[0].disabled = false;
Funktioniert gut für mich - obwohl es nicht die beste Methode ist, den Code zu hacken.
Ich habe jQuery ('select') verwendet. Selected ({disable_search: true}); Auf Chrome Profiler wurde die Methode search_field_scale trotzdem aufgerufen und frisst viel von der Performance.
Also entferne ich die Methode und alle Aufrufe an ihn und ersetze sie mit this.search_field.css ({'width': '100%'}) auf show_search_field_default und ersetze style = 25px durch style: 100%. .dieses.search_field.css ({'width': '23px'}); result_select wegen des "Datenplatzhalters"
funktioniert gut für mich.
disable_search:true,
Mit der neuesten Version von selected funktioniert das nur für mich:
$('ul.chosen-choices li.search-field').hide();