it-swarm.com.de

jQuery Gewähltes Plugin ohne Suchfeld

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.

http://harvesthq.github.com/chosen/

30
bob_cobb

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

11
Dhiraj

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.

62
gunnarsson
$(".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.

43

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; }
5
Jef Furlong

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!

3
Adnan

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}
2
GwenM
$('select').chosen( {disable_search: true} );
2
sami

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 });
2
fotijr

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.

1
Arerrac

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.

0
pedrolopes10
0
Fury

Mit der neuesten Version von selected funktioniert das nur für mich:

$('ul.chosen-choices li.search-field').hide();
0
Darin Kolev