Laden von entfernten Daten nur einmal mit Select2

8

Wie der Titel schon sagt, möchte ich Remote-Daten nur einmal laden. Ich dachte darüber nach, Daten mit einem unabhängigen Ajax-Aufruf zu laden und sie "lokal" auf die Steuerung zu setzen, aber ich frage mich, ob es mehr "eingebaute" Möglichkeiten dafür gibt ...

    
Yaron 20.12.2013, 10:30
quelle

3 Antworten

5

Eine Lösung finden Sie hier:

Ссылка

%Vor%

Bearbeiten:

Ich könnte Ihre Frage falsch interpretiert haben. Wenn Sie alle Daten einmal laden möchten, verwenden Sie Select2, es gibt keine eingebaute Funktionalität dafür.

Ihr Vorschlag, eine einzelne Abfrage auszuführen und dann die gespeicherten Daten in Select2 zu verwenden, wäre der richtige Weg.

    
Chris W 20.12.2013 10:33
quelle
0

Um Daten einmal zu laden:

Annahmen:

  • Sie haben einen REST-API-Endpunkt unter / services, der ein JSON-Array mit Objekten bedient

  • Das Array enthält Objekte, die mindestens ein "name" - und ein "id" -Attribut haben. Beispiel:

    %Vor%
  • Sie möchten dieses Array als globales 'services_raw'

  • speichern

Zuerst laden wir die Daten und erstellen das globale 'services_raw' (AKA 'window.services_raw'):

%Vor%

Zweitens, unser Select2 Instanziierungscode, der unsere Daten in ein Format umwandelt, mit dem Select2 arbeiten kann:

%Vor%

Hier sehen Sie, wie das Select2-Element in HTML vor dem Aufruf aussehen sollte:

%Vor%

Um all dies zu verwenden, rufen Sie (in JS) auf:

%Vor%

Schließlich ist hier ein JSFiddle, wo Sie mit einer ähnlichen Sache spielen können: Ссылка

Im obigen Beispiel verwenden wir einfach Ajax, um das Äquivalent von window.pills in der Fiddle zu füllen.

Hoffe das hilft:)

Bitte antworten Sie, wenn Sie wissen, wie Sie dies über die Funktion Select2 .ajax tun, da dies etwas kürzer wäre.

    
seanp2k 17.09.2014 19:05
quelle
0

Dies ist für Select2 v4.0.3:

Ich hatte die gleiche Frage und habe es durch Auslösen eines AJAX-Aufrufs und Verwenden der als initialisiertes Datenfeld zurückgegebenen Daten verstanden.

%Vor%

Dies funktionierte gut für das, was ich vorhatte. Hoffe, das hilft Leuten, die mit derselben Frage suchen.

    
Ska737 18.01.2018 00:04
quelle

Tags und Links