为什么这个jQuery语法错误?

时间:2012-10-11 16:00:40

标签: jquery firebug datatables

我正在编写一个jQuery / datatables应用程序,我收到以下Firebug JS错误:

TypeError: $("#my-datatable").datatable is not a function
[Break On This Error]   

"fnServerParams" : function(serverParams) {

当我点击错误时,它会带我到我写的以下jQuery / datatbale代码:

$("#my-datatable").datatable( {
    "sAjaxSource" : "/widgets/doSomething",
    "fnServerParams" : function(serverParams) {
        serverParams.push(
            {
                "name" : "provider",
                "value" : token
            }
        );
    }
});

它正在抱怨这条线:

  

“fnServerParams”:function(serverParams){

我如何错误地使用它?

1 个答案:

答案 0 :(得分:2)

由于错误是'$(“#my-datatable”)。datatable不是函数',这通常意味着函数的源代码尚未包含在内。在调用函数之前,您是否包含了此所需的任何源js文件?

<script language="javascript" type="text/javascript" src="somewhere.js"></script>

如果你已经包含了这个,那么要检查的另一件事是确保在DOM准备就绪时调用。这可以使用$(document).ready或$(function(){})来完成,如下所示:

$(function(){
    $("#my-datatable").datatable({...})
});