web-dev-qa-db-ja.com

DataTables:Uncaught TypeError:未定義のプロパティ「デフォルト」を読み取ることができません

DataTablesに Bootstrap integration を使用すると、コンソールに次のエラーが表示されます。

Uncaught TypeError:未定義のプロパティ「デフォルト」を読み取ることができません(dataTables.bootstrap.js:20)

これにより、ページネーションコントロールにスタイルが設定されなくなります。

工場出荷時の初期化では、次のコードを実行する必要があることがわかります。

factory( jQuery, jQuery.fn.dataTable );

ただし、jQuery.fn.dataTableundefinedを返します。

47
Ryan Kohn

問題は、このメソッドを呼び出している時点でdataTableが定義されていないことです。

.jsファイルを正しい順序でロードしていることを確認してください。

<script src="/Scripts/jquery.dataTables.js"></script>
<script src="/Scripts/dataTables.bootstrap.js"></script>
160
Ryan Kohn

同じエラーが発生しました。laravel 5.4をwebpackで使用しています。以前はpackage.jsonでした。

{
  ...
  ...
  "devDependencies": {
    "jquery": "^1.12.4",
    ...
    ...
  },
  "dependencies": {
    "datatables.net": "^2.1.1",
    ...
    ...
  }
}

これらのdatatables.netまたは"dependencies": {}"devDependencies": {}のいずれかの下でjqueryおよびpackage.json npmパッケージを移動する必要があり、エラーは消えました。

{
  ...
  ...
  "devDependencies": {
    "jquery": "^1.12.4",
    "datatables.net": "^2.1.1",
    ...
    ...
  }
}

それがお役に立てば幸いです!

3
Alan Elias