2017-06-17 63 views
0

我知道這被問了幾百次,但我認爲我的案例非常具體,它需要知道jQuery幫助的人,或者至少已經看到過!DataTables警告:表id = table_especie - 請求未知參數'0'爲第0行第0列

我有這樣的代碼中創建一個名爲表「especie:

HTML

<table class="table" id="table_especie"> 
    <thead> 
     <tr> 
     <th></th> 
     <th></th> 
     </tr> 
    </thead> 
    <tbody> 
    </tbody> 
</table> 

腳本JS:

var tableEspecie= $('#table_especie').DataTable({ 
    "paging": false, 
    "info":  false, 
    "order": [ 
     [2, "asc" ], 
     [3, "asc"], 
     [1, "asc"] 
    ], 
    "columnDefs": [ 
     { "visible": false, "targets": 0 }, 
     { "visible": false, "targets": 2 }, 
     { "visible": false, "targets": 3 } 
    ], 

    "drawCallback": function() { 
     var api = this.api(); 
     var rows = api.rows({page:'current'}).nodes(); 
     var last=null; 

     api.column(2, {page:'current'}).data().each(function (especie, i) { 
      if (last !== especie) { 
       $(rows).eq(i).before(
        '<tr class="especie info"><td colspan="4">'+especie+'</td></tr>' 
       ); 

       last = especie; 
      } 
     }); 

     $("#table_especie thead").remove(); 
     $("#table_especie tfoot").remove(); 
    } 
}); 

var populateEspecieShowName = function(data) { 
    $('#animal_especie_name').text(data[0].name); 
}; 


var populateEspecieTable = function(data) { 
    var animais = []; 

    $.each(data, function(id_animal, animal){ 
     animais.push([ 
      animal.id_animal, 
      animal.nome_animal + ': ' + '<br>' + animal.notas_animal, 
      animal.foto_animal 
     ]); 
    }); 

    $('#table_especie').dataTable().fnClearTable(); 
    $('#table_especie').dataTable().fnAddData(animais); 
    $('#table_especie').dataTable().fnDraw(); 
}; 

$('#table_especie tbody').on('click', 'tr', function() { 
    var animalId = $('#table_especie').DataTable().row(this).data(); 

    if (animalId !== undefined) 
     $.route('animal/' + animalId[0]); 
}); 

$('#table_especie_search').keyup(function(){ 
    $('#table_especie').DataTable().search($(this).val(), false, true).draw() ; 
}); 

基本上,它利用數據庫中的數據構建表!我收到錯誤信息(DataTables warning:table id = table_especie - 請求第0行第0列的未知參數爲'0'。有關此錯誤的更多信息,請參見http://datatables.net/tn/4)我從表「especies」轉到表「especie」。這個錯誤使得它聽起來像是「especie」有問題。我應該改變什麼來使錯誤消失?它仍然建立表格,但是我之前得到這個錯誤。謝謝!!!

+0

我爲你正在嘗試做的有點困惑。我看到你刪除標題,這打破了DataTables。你只是想創建動態列? – Bindrid

+0

是的。所以基本上我正在創建一個應用程序,它將從數據庫(MySQL)中獲取數據並動態顯示它。這是一個向避難所展示動物的應用程序,所以它需要能夠從本地數據庫獲取數據,以防更多動物被添加/刪除。 –

回答

1

解決方案:

"columnDefs": [{ 
    "defaultContent": "-", 
    "targets": "_all" 
}], 
+1

雖然這可能會回答這個問題,但一些評論和/或解釋會很好。這也會幫助其他用戶。 – VDWWD

+0

現在它不顯示錯誤,但它不會生成表格,錯誤,當使用Chrome進行調試時: jquery.dataTables.min.js:65未捕獲TypeError:無法讀取未定義的屬性'aDataSort' W(jquery.dataTables.min.js:65) at ya(jquery.dataTables.min.js:70) at e(jquery.dataTables.min.js:91) at HTMLTableElement。 (jquery.dataTables.min.js:93) at Function.each(jquery.min.js:2) ...... –

相關問題