Migliore griglia JavaScript / JQuery dinamica [chiusa]


87

Lavoro con JavaScript, JQuery e HTML. L'interfaccia utente del mio progetto è completamente dinamica. Sto cercando una griglia JavaScript / JQuery dinamica che supporti le seguenti funzionalità.

Qualcuno può dirmi che esiste una griglia open source di bell'aspetto che supporta le seguenti funzionalità?

  1. Dovrei essere in grado di creare un'istanza della griglia in fase di esecuzione e aggiungerla a DOM.
  2. Supporta modelli di colonna (casella di testo, selezione, casella di controllo o qualsiasi input o testo semplice)
  3. Supporta l'impostazione di un nuovo modello di colonna o la sostituzione del modello di colonna esistente in tempo reale.
  4. Pochi controlli di input (ad esempio casella di testo, casella di controllo ..) presenti sotto una colonna possono essere abilitati e pochi possono essere disabilitati .
  5. Supporta setData () in tempo reale.
  6. Supporta eventi se i dati di input vengono modificati dall'utente.
  7. Dovrebbe supportare la selezione di una riga
  8. Aggiungi riga o elimina il supporto riga in tempo reale senza eseguire il rendering dell'intera griglia.
  9. Supporta il paging.
  10. Supporta l'ordinamento in base a qualsiasi colonna in tempo reale.
  11. Genera un evento se i dati vengono ordinati per utente in tempo reale.
  12. L'interfaccia utente della griglia deve supportare colonne realizzabili
  13. Ridimensionamento automatico (sarà fantastico se la griglia è ridimensionabile automaticamente in base alle dimensioni dell'elemento genitore)
  14. Ha sicuramente una buona documentazione.

7
Scrivilo tu stesso. Se vuoi tutte queste funzionalità, devi farlo da solo. La soluzione personalizzata è sempre la soluzione migliore.
Raynos

28
Non sono sicuro che sia sempre la soluzione migliore. Voglio dire - non ho intenzione di costruire il mio motore di database piuttosto che usare InnoDB ...
Grim ...

2
@Roynos, ho scritto poche cose da solo, ma ho bisogno di investire molto tempo per implementare tutte le funzionalità come l'ordinamento, il ridimensionamento ... ecc. Quindi sto cercando un controllo della griglia. Sto ancora valutando tutte le griglie una per una.
Somnath

22
@Raynos È ridicolo. La soluzione migliore è quella che funziona al minor costo. Perché costruirlo se è già stato fatto?
richard

@RichardDesLonde hai ragione. La mia opzione è quella di selezionare la migliore soluzione esistente ed estenderla in base alle vostre esigenze.
Somnath

Risposte:


42

Alcuni utili sono:

Gratuito:

Pagato:

Le voci migliori secondo me sono Flexigrid e jQuery Grid.


Fino ad ora ho iniziato ad apprezzare jQuery Grid. trirand.com/blog/jqgrid/jqgrid.html Ma ancora non ne sono sicuro. Tieniti aggiornato ...
Somnath

@ Somnath - jQuery grid è quello di cui sei stato più soddisfatto? Ho un'esigenza simile e ho valutato DataTables, ma l'aggiunta di righe (e che facciano parte dell'ordinamento) non funziona bene.
MattW

@ MattW Sì, mi piace jQuery Grid, l'aggiunta di dati è davvero facile. Inoltre puoi ordinare ogni colonna semplicemente impostando un flag. La mia lista dei requisiti era davvero grande. Ma poche cose mi costruisco da solo e per pochi casi sto usando jQuery Grid. Ha anche un'API interessante e facile. A questo punto sono soddisfatto di jQuery Grid. Va bene.
Somnath

@ Somnath Allora, finalmente quale hai scelto? Anche l'intestazione DataTable è una buona opzione. Qual è il più veloce? E quale supporta il raggruppamento?
Vivek Vardhan

@VivekVardhan im utilizzando trirand.com/blog/jqgrid/jqgrid.html
Somnath il

38

puoi provare http://datatables.net/

DataTables è un plug-in per la libreria jQuery Javascript. È uno strumento altamente flessibile, basato sulle basi del miglioramento progressivo, che aggiungerà controlli di interazione avanzati a qualsiasi tabella HTML. Caratteristiche principali:

  • Impaginazione a lunghezza variabile
  • Filtraggio al volo
  • Ordinamento a più colonne con rilevamento del tipo di dati
  • Gestione intelligente delle larghezze delle colonne
  • Visualizza i dati da quasi tutte le origini dati
  • DOM, array Javascript, file Ajax ed elaborazione lato server (PHP, C #, Perl, Ruby, AIR, Gears ecc.)
  • Opzioni di scorrimento per la vista tabella
  • Completamente internazionalizzabile
  • Supporto per jQuery UI ThemeRoller
  • Solido come una roccia, supportato da una suite di oltre 2600 unit test
  • Ampia varietà di plug-in inc. TableTools, FixedColumns, KeyTable e altro ancora
  • È gratis!
  • Risparmio di stato
  • Colonne nascoste
  • Creazione dinamica di tabelle
  • Caricamento automatico dei dati Ajax
  • Posizionamento DOM personalizzato
  • Filtraggio a colonna singola
  • Tipi di impaginazione alternativi
  • Interazione DOM non distruttiva
  • Ordinamento delle colonne in evidenza
  • Opzioni avanzate dell'origine dati
  • Ampio supporto plug-in
  • Ordinamento, rilevamento del tipo, funzioni API, impaginazione e filtro
  • Completamente personalizzabile tramite CSS
  • Documentazione solida
  • 110+ esempi predefiniti
  • Pieno supporto per Adobe AIR

3
Si prega di eseguire la formattazione corretta per le funzionalità chiave. Non usare solo copia / incolla. Devi leggerlo una volta dopo il copia / incolla?

Cosa significa "interazione DOM non distruttiva"? Avere difficoltà a capire perché questo è un romanzo o una caratteristica e cosa copre / garantisce.
John Zabroski

1
@ John non è più menzionato nella pagina collegata, ma se cerchi quella frase sul Web, troverai "Il cambiamento più grande nella v1.4 è l'interazione DOM non distruttiva. Ciò significa che DataTables non sovrascriverà gli elementi della tabella per eseguire le sue funzioni (vero miglioramento progressivo!), piuttosto sposta gli elementi in giro. Nella v1.3 e prima che creasse dinamicamente l'HTML richiesto per il corpo su ogni disegno, non è più così. Il vantaggio immediato è che tutti gli attributi (classi, ecc.) Sulla tabella originale vengono conservati [...] "
CodeCaster

5
non è un software libero penso, mmm, un problema con esso.
David

4
sembra che queste fantastiche griglie DataTables non siano modificabili e, se ne hai bisogno, devi pagare per la versione modificabile: editor.datatables.net/purchase/index
yetanothercoder

8

I miei suggerimenti per JQuery Grid dinamico sono di seguito.

http://reconstrukt.com/ingrid/

https://github.com/mleibman/SlickGrid

http://www.datatables.net/index

Il migliore è:

DataTables è un plug-in per la libreria jQuery Javascript. È uno strumento altamente flessibile, basato sulle basi del miglioramento progressivo, che aggiungerà controlli di interazione avanzati a qualsiasi tabella HTML.

Impaginazione a lunghezza variabile

Filtraggio al volo

Ordinamento a più colonne con rilevamento del tipo di dati

Gestione intelligente delle larghezze delle colonne

Visualizza i dati da quasi tutte le origini dati

DOM, array Javascript, file Ajax ed elaborazione lato server (PHP, C #, Perl, Ruby, AIR, Gears ecc.)

Opzioni di scorrimento per la vista tabella

Completamente internazionalizzabile

Supporto per jQuery UI ThemeRoller

Solido come una roccia, supportato da una suite di oltre 2600 unit test

Ampia varietà di plug-in inc. TableTools, FixedColumns, KeyTable e altro ancora

Creazione dinamica di tabelle

Caricamento automatico dei dati Ajax

Posizionamento DOM personalizzato

Filtraggio a colonna singola

Tipi di impaginazione alternativi

Interazione DOM non distruttiva

Ordinamento delle colonne in evidenza

Opzioni avanzate dell'origine dati

Ampio supporto plug-in

Ordinamento, rilevamento del tipo, funzioni API, impaginazione e filtro

Completamente personalizzabile tramite CSS

Documentazione solida

110+ esempi predefiniti

Pieno supporto per Adobe AIR


5

Dai un'occhiata a agiletoolkit.org poiché ha un CRUD semplice da usare che supporta 2,4,6,7,9,10 e 12 fuori dalla scatola (utilizza Ajax per difendere la griglia durante l'aggiunta, l'eliminazione dei dati e si integra con jquery.

Pubblicherei alcuni esempi ma al momento su un iPad.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.