Sto cercando un modo per sapere se le tabelle in una pagina sono DataTable o no? C'è un modo semplice per trovarlo? O potrebbe essere se riesco a ottenere tutti gli oggetti di DataTable.C'è un modo per scoprire che una tabella nella pagina è un oggetto dataTable?
risposta
if($('table').parents('.dataTable_wrapper').length>= 1) {
do something...
}
È un po 'un trucco, ma non esiste ancora un modo nativo per verificare un'istanza datatable. Questo è qualcosa che ho appena appreso ieri.
C'è un metodo statico nel plugin DataTable, quindi si può verificare come:
$('table').each(function() {
// this method accepts the DOM node (table element) as parameter
if ($.fn.dataTable.fnIsDataTable(this)) {
// do your thing to the table
}
});
È possibile ottenere tutte le tabelle della pagina che sono DataTable in un colpo solo con. Il codice per DataTable 1.10 sarebbe:
$.fn.dataTable.tables()
Ecco il doc per esso. Ciò restituirà una matrice di elementi DOM . Se si desidera ottenere le istanze di API DataTable che sono associati con loro, si può fare:
var tables = $.fn.dataTable.tables();
var datatables = $(tables).DataTable();
Nota che, anche se chiamare .DataTable()
come sopra può creare una nuova istanza API DataTable e di conseguenza inizializzare il vostro tavolo, se il Gli elementi DOM per i quali il metodo è chiamato già hanno le proprie istanze (l'API è già stata creata e inizializzata), la chiamata sarà non creare nuove istanze. In altre parole, il codice sopra non inizializzerà nuovamente le tue tabelle.
L'oggetto datatables
è un'istanza API che controlla l'intera collezione di tabelle. La chiamata delle funzioni API su questa istanza controllerà tutte le tabelle contemporaneamente. Adattare un esempio dalla documentazione, questo codice:
datatables.page('next').draw(false);
renderebbe tutte le tabelle saltano alla loro pagina successiva (se esiste).
Nelle versioni precedenti alla 1.10, la funzione equivalente era $.fn.dataTable.fnTables
.
Roy Ling ha menzionato $.fn.dataTable.fnIsDataTable
che può essere utilizzato per verificare le tabelle singolarmente. Naturalmente, in 1.10 è ancora possibile testare le tabelle singolarmente quando necessario, la funzione è $.fn.dataTable.isDataTable
.
So che potrebbe essere un po 'di tempo da quando questa domanda è stata pubblicata, ma come stavo ponendo la stessa domanda io stesso, sono venuto a questa soluzione dal riferimento DataTable site.
Ecco come verificare se #example è un DataTable o meno. In caso contrario, inizializzare:
if (! $.fn.DataTable.isDataTable('#example')) {
$('#example').dataTable();
}
Spero che questo aiuti qualcuno!
- 1. Come scoprire a quale tabella appartiene un blocco di pagina
- 2. scoprire se un oggetto C++ è richiamabile
- 3. C'è un modo per scoprire se un thread è bloccato?
- 4. Un modo migliore per determinare persino/righe dispari nella tabella
- 5. Posta una tabella HTML per ADO.NET DataTable
- 6. Modo JavaScript per stabilire se un oggetto è una matrice
- 7. c'è un modo per scoprire da dove proviene un ramo?
- 8. Creazione di una tabella di pivot da un DataTable
- 9. Un modo per personalizzare l'etichetta "Successo" nella pagina "Progetti"?
- 10. Un modo per prendere un oggetto nella finestra di controllo e "Script" è
- 11. C'è un modo per rilevare se un oggetto è bloccato?
- 12. Perché Powershell pensa che sto cercando di restituire un oggetto [] piuttosto che un DataTable?
- 13. Che cos'è un oggetto "serializzato" nella programmazione?
- 14. Lua: come scoprire se un elemento è una tabella anziché una stringa/numero?
- 15. Qual è il modo più veloce per ottenere un DataTable in SQL Server?
- 16. Posiziona un oggetto in alto a destra nella pagina
- 17. MVC 3: DropDownList su Modifica forma per un oggetto che è una proprietà di un ViewModel
- 18. In che modo quasi tutto in Javascript è un oggetto?
- 19. Oggetto JSON nella tabella Moustache.js
- 20. Come convertire un DataTable/DataSet in un oggetto ObjectDataSource
- 21. Creazione di un oggetto DataTable con dati fittizi
- 22. C'è un modo per scoprire quante volte una classe è stata istanziata in php?
- 23. C'è un modo per scoprire se A è una sottomatrice di B?
- 24. Il modo migliore per scoprire se l'elemento è un discendente di un altro
- 25. Trova un vincolo univoco nella tabella database
- 26. Come verificare se un oggetto di database in Oracle è una tabella o una vista
- 27. C'è un modo per inizializzare un oggetto attraverso un hash?
- 28. C'è un modo per scoprire quale FILE ha usato require_once?
- 29. Ereditarietà: esiste un modo per scoprire la classe da cui è stato chiamato un metodo?
- 30. Come posso convertire un DataTable in un oggetto dinamico?
Quel trucco funzionerà ma stavo cercando una soluzione più robusta. – emphaticsunshine
Questa soluzione proviene da questo thread nel forum dei dati, http: // datatables.net/forums/discussion/7748/check-if-dom-table-is-datatable-instance/p1, la risposta è arrivata dal creatore dei data-information stesso, quindi sfortunatamente non penso ci siano molti altri modi per farlo . –
In realtà sto cercando l'oggetto dataTable in modo che possa richiamare alcune funzioni su di esso. – emphaticsunshine