Sto usando select2
con adattatore dati personalizzato. Tutti i dati forniti a select2
vengono generati localmente nella pagina Web (quindi non è necessario utilizzare ajax). Poiché il metodo query
può generare un sacco di risultati (circa 5k) l'apertura della casella di selezione è piuttosto lenta.Come abilitare lo scrolling infinito in select2 4.0 senza ajax
Come rimedio, volevo usare lo scroll infinito. Documentation per l'adattatore dati personalizzati dice che query
metodo dovrebbe ricevere page
parametro insieme a term
:
@param params.page La pagina specifica che deve essere caricato. Questo è tipicamente fornito quando si lavora con insiemi di dati remoti, che si basano su paginazione per determinare quali oggetti devono essere visualizzati.
Ma non è così: è presente solo term
. Ho provato a restituire more: true
o more: 1000
, ma questo non ha aiutato. Immagino sia perché, per impostazione predefinita, infinite scroll is enabled iff ajax is enabled.
Suppongo che l'abilitazione dello scroll infinito comporterà l'utilizzo di amd.require
, ma non sono sicuro di cosa fare esattamente. Ho provato questo codice:
Questa è una sceneggiatura per il caffè, ma spero che sia leggibile per tutti. input
è DOM
elemento contenente casella di selezione - ho già fatto input.select2(//options)
La mia domanda è, fondamentalmente, non effettuato scroll infinito senza ajax
?
Sarei molto interessato a una risposta a questo. Hai scoperto qualcosa? –
@happytimeharry Sì, l'ho fatto. Ho descritto la mia soluzione nella risposta. Spero possa essere d'aiuto! –