2014-02-14 56 views
0

我是新来的jquery数据表,我有一个数据表,我想添加一些行使用ajax,每次我打电话的功能,它给我以下错误,jquery datatables添加行不起作用

TypeError: $(...).dataTable(...).fnAddData is not a function 

一切正常,当我使用它与静态数据,我加入了像,

$.ajax({ 
    url: "<?=site_url('controller/function/'any-id)?>", 
    success: function(result){ 

     $.each(result, function(i, v) { 
      $('#mytable').dataTable().fnAddData([ 
                 v.id, 
                 v.name 
               ]); 
      }); 
     } 
}); 

同时,我的表结构的模样,

<table id="my_table" class="table"> 
    <thead> 
    <tr> 
     <th>ID</th> 
     <th>Name</th> 
    </tr> 
    </thead> 
    <tbody> 
    // tried with some <tr><td></td></tr> as well.. 
    </tbody> 
</table> 


<script> 
$(document).ready(function(){ 
    $('#my_table').dataTable({ 
     "bFilter": false, 
     "bInfo": false, 
     "bPaginate": false, 
     "sDom": 'lfrtip' 
    }); 
}); 
</script> 

回答

0

您是否考虑过使用sAjaxSource属性来添加Ajax数据? (例如:http://www.datatables.net/release-datatables/examples/ajax/ajax.html

$(document).ready(function(){ 
    $('#my_table').dataTable({ 
     "bFilter": false, 
     "bInfo": false, 
     "bPaginate": false, 
     "sDom": 'lfrtip', 
     "sAjaxSource": '<?=site_url('controller/function/'any-id)?>' 
    }); 
}); 

此外,确保您使用的是正确的URL来获取数据,数据格式正确无误。

+0

[{“id”:“2”,“name”:“我的名字”},{“id”:“9”,“name”:“Faan”}]这里是格式, –