407 Stimmen

Datatables: Kann die Eigenschaft 'mData' von 'undefined' nicht lesen.

Ich habe ein Problem mit Datatables. Ich habe auch diesen Link durchgelesen, der keine Ergebnisse lieferte. Ich habe alle erforderlichen Voraussetzungen eingefügt, wo ich Daten direkt in das DOM parsen.

Skript

$(document).ready(function() {
  $('.viewCentricPage .teamCentric').dataTable({
    "bJQueryUI": true,
    "sPaginationType": "full_numbers",
    "bPaginate": false,
    "bFilter": true,
    "bSort": true,
    "aaSorting": [
      [1, "asc"]
    ],
    "aoColumnDefs": [{
      "bSortable": false,
      "aTargets": [0]
    }, {
      "bSortable": true,
      "aTargets": [1]
    }, {
      "bSortable": false,
      "aTargets": [2]
    }],
  });
});

13voto

Siddharth Punkte 9123

Noch ein Grund, warum dies passiert, ist der Spaltenparameter bei der Initialisierung der DataTable.

Die Anzahl der Spalten muss mit den Überschriften übereinstimmen

"columns" : [ {
                "width" : "30%"
            }, {
                "width" : "15%"
            }, {
                "width" : "15%"
            }, {
                "width" : "30%"
            } ]

Ich hatte 7 Spalten

Vollständiger Name
Telefonnummer
Fahrzeug
Heimatort
Tags
Aktueller Standort
Dienst Weg

13voto

venkatskpi Punkte 740

Tipp 1:

Verweise auf diesen Link, um einige Ideen zu erhalten:

https://datatables.net/forums/discussion/20273/uncaught-typeerror-cannot-read-property-mdata-of-undefined

Tipp 2:

Überprüfen Sie, ob folgendes korrekt ist:

  • Bitte überprüfen Sie die Jquery-Version
  • Bitte überprüfen Sie die Version Ihres CDN oder Ihrer lokalen datatables-bezogenen .min & css-Dateien
  • Ihre Tabelle hat und Tags
  • Die Länge der Header-Spalten Ihrer Tabelle entspricht der Länge der Body-Spalten
  • Sie verwenden einige Spalten mit style='display:none', diese Eigenschaft sollte sowohl auf Ihren Header als auch auf Ihren Body angewendet werden.
  • Die Spalten Ihrer Tabelle sind nicht leer, verwenden Sie etwas wie [ Null, --, NA, Nil ]
  • Ihre Tabelle ist gut ohne , -Probleme durch

10voto

renkse Punkte 502

Ich habe den gleichen Fehler gesehen, als ich versucht habe, colspan zu letztem th hinzuzufügen

und habe es gelöst, indem ich eine versteckte Spalte am Ende von tr hinzugefügt habe

Die Erklärung dafür ist, dass aus irgendeinem Grund DataTable nicht auf eine Tabelle mit colspan im letzten th angewendet werden kann, jedoch angewendet werden kann, wenn colspan in einem beliebigen mittleren th verwendet wird.

Diese Lösung ist etwas "gehackt", aber einfacher und kürzer als jede andere Lösung, die ich gefunden habe.

Ich hoffe, dass das jemandem hilft.

9voto

Francisco Balam Punkte 181

Du musst dein colspan entfernen und die Anzahl der th und td muss übereinstimmen.

7voto

Fırat DİKMEN Punkte 159

Ich erhalte einen ähnlichen Fehler. Das Problem ist, dass die Überschriftenzeile nicht korrekt ist. Als ich die folgende Überschriftenzeile verwendet habe, wurde das Problem, das ich hatte, behoben.

                Gemeinsamer Titel

                Name
                Position
                Büro
                Alter
                Eintrittsdatum
                Gehalt

                Tiger Nixon
                Systemarchitekt
                Edinburgh
                61
                2011/04/25
                $320,800

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X