3

jQuery の DataTables プラグインを使用して、HTML5 でテーブルを作成しています。テーブルには、バックエンド Web サービスから受信した JSON オブジェクトが取り込まれています。

Web アプリケーションを実行すると、コンソールに次のエラーが表示されます。

キャッチされていない TypeError: オブジェクト [オブジェクト オブジェクト] にメソッド 'dataTable' がありません

Google Chrome と Firefox の同様のもの。

jQuery および jQuery DataTables の最新のスクリプトを使用しています。また、静的テーブルに DataTables を作成しようとしましたが、うまくいきました。

このdataTable()関数は、動的に設定されたテーブルのスクリプトで認識されていません。

DataTables のコードは次のとおりです。

$(document).ready( function () {

    $('#datatable').dataTable( {

        "sScrollY": "200px",
        "bPaginate": false,
        "bProcessing": true

    } );
} );  

datatable移入される表の名前です。

この問題を解決するための助けをいただければ幸いです。

4

2 に答える 2

2

これを機能させるために試すことができることがいくつかあります。

  1. スクリプトがページに取り込まれていることを確認してください。確認する方法の 1 つは、Chrome デバッガーの [ソース] タブを使用して、html ヘッド セクションで他のファイルを検索することです。

  2. jQuery をインクルードした後に datatale スクリプトをインクルードしたことを確認してください。

  3. jQuery が正しく含まれているかどうかを確認し、1 回だけ実行します。

  4. jQuery の競合に注意してください。$ をオーバーライドしている他のライブラリがあるため、$ は jQuery のエイリアスではないため、コードが機能しません。同じjQuery.noConflict()変数 $.

  5. " datatable は、データが入力されるテーブルの名前です" <--- 間違ったテーブルには、コードによると ID 呼び出し 'datatable' が必要です$('#datatable')

于 2012-12-19T05:05:50.293 に答える
0

$('#datatable').dataTable() は、テーブルが JSON オブジェクトで満たされる前に呼び出されると思います。テーブルを埋めた直後に dataTable() を同じ場所に追加することをお勧めします。

于 2012-12-19T05:13:09.590 に答える