2015-02-11 19 views
40

Ho creato questo piano rispetto a e funziona bene come per le mie esigenze: FiddleJQuery DataTables: Impossibile leggere la proprietà 'aDataSort' undefined

Tuttavia, quando uso la stessa nella mia applicazione si ottiene un errore nel browser console dicendo Impossibile leggere proprietà 'aDataSort' di indefinito

Nella mia applicazione, il javascript si legge qualcosa di simile, come di seguito: ho controllato l'uscita del regolatore ... funziona bene ed è stampato sulla console anche.

+0

Si prega di essere sicuri che il codice è stato incluso è la stessa come il violino (è non) e quello che stai correndo. Inoltre nel fiddle hai due aTargets [0], controlla: http://jsfiddle.net/gL0p0t42/ –

+0

Non stai fornendo la fonte che effettivamente chiama "aDataSort". – Daniel

+0

Intendi l'id della tabella html? Mi sono preso cura di questo. Fammi provare con un obiettivo. – swateek

risposta

2

ho anche questo problema, le seguenti modifiche hanno risolto il mio problema.

$(document).ready(function() { 
    $('.datatable').dataTable({ 
      bSort: false, 
      aoColumns: [ { sWidth: "45%" }, { sWidth: "45%" }, { sWidth: "10%", bSearchable: false, bSortable: false } ], 
     "scrollY":  "200px", 
     "scrollCollapse": true, 
     "info":   true, 
     "paging":   true 
    }); 
}); 

matrice aoColumns descrive la larghezza di ciascuna colonna e le sue proprietà sortable.

61

È importante che il THEAD non sia vuoto nella tabella. Come dataTable è necessario specificare il numero di colonne dei dati previsti. Secondo i dati dovrebbe essere

<table id="datatable"> 
    <thead> 
     <tr> 
      <th>Subscriber ID</th> 
      <th>Install Location</th> 
      <th>Subscriber Name</th> 
      <th>some data</th> 
     </tr> 
    </thead> 
</table> 
+17

Cosa succede se ho un requisito che comporta la configurazione di colonne e il numero di dette colonne in Runtime? Come posso implementare il codice per il requisito di cui sopra? –

+0

Questo mi ha aiutato a risolvere il mio problema di dati non stampati. Beh, mi ha anche aiutato a curare un altro mio problema per datatable in cui ho scritto '" Sort ": false', quindi è stato in grado di visualizzare l'elenco in ordine decrescente proveniente dal controller come' Model.OrderByDescending (x => x .Action == 0) .ThenBy (x => x.Action) '. –

+1

Non posso revocarti più di una volta, altrimenti avrei !! –

17

ha avuto anche questo problema, Questo array è fuori portata:

order: [1, 'asc'], 
+0

Questo mi prende sempre. C'è un modo per impostare l'array su 0, se l'array è fuori portata? – JGreasley

+1

@JGreasley Puoi impostarlo come una matrice vuota: ordine: [] – hogarth45

+0

Le colonne di miniera dove 5 e io stavamo specificando 7 qui! Grazie – aiffin

Problemi correlati