1

I'm getting the following error when I try to access a page that's supposed to display a table with the jquery plugin from datatables.net:

Microsoft JScript runtime error: Object doesn't support property or method 'dataTable'

Here is where I'm referencing various scripts/plugins on my page:

<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.6.2.min.js"></script>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.0/jquery.dataTables.min.js" ></script>
<script type="text/javascript" src="Script/jquery.tools.min.js"></script>
<script type="text/javascript" src="Script/superfish.js"></script>
<script src="Script/jquery.MultiFile.js" type="text/javascript"></script>
<script type="text/javascript" src="Script/supersubs.js"></script>

ここで、テーブルで dataTable 関数を呼び出そうとしています (id mod123 を使用):

<script type="text/javascript">
    $(document).ready(function() {
        $('#mods123').dataTable();
    });
</script>

テーブル内に thead タグと tbody タグがありますが、プロジェクトをビルドしてローカルで実行し、ページに移動すると、このエラーが発生します。別のブラウザーでページに移動すると、もちろんエラーは表示されませんが、影響を与えようとしているテーブルはまったく変更されません。

Firebug でページを見ると、次のエラーが表示されます: $("#mods123").dataTable は関数ではありません

Chrome のデバッガーに「Uncaught TypeError: Object [object Object] has no method 'dataTable'」と表示される

何か案は?

4

2 に答える 2

2

お使いのバージョンの jQuery は dataTables と互換性がないようです。dataTables に付属しているバージョンの jQuery を使用してみてください。jQuery 1.7.1だと思います。

于 2012-04-11T22:16:20.863 に答える
1

わかりました、実際にはデータテーブルと jquery ツールの間の競合だったようです。jquery ツールへの参照を削除すると、うまくいきました。

現在jqueryツールを使用しているとは思わないので、大丈夫かもしれませんが、そうでない場合、どうすればこの競合を回避できますか? これに関する具体的な参照が見つからなかったので、以前は古いバージョンのツール用だったのですが、修正されたのでしょうか。繰り返しますが、私は言及を見つけることができないようです...

于 2012-04-12T12:19:23.473 に答える