2013-05-06 64 views
1

我想通過我的jQuery數據表中的行循環來提取出某些行信息並將其插入到我的數組中,我將稍後在AJAX調用中使用它。通過jQuery數據表循環來獲取特定列

我明白我可以使用在數據表中.each,但我只想要一些列的(我有HTML編輯/刪除,我沒有在JSON需要)

目前開設類似:

//Create the array 
var myArray = new Array(); 
var oTable = $('#myDataTable').dataTable(); 
var tableLength = oTable.fnGetData().length; 

     //Step through table 
     for (var i = 0; i < tableLength; i++) { 
      myArray[i][0] = oTable.fnGetData(i, 0); 
      myArray[i][1] = oTable.fnGetData(i, 1); 
      myArray[i][2] = oTable.fnGetData(i, 3); 
      myArray[i][3] = oTable.fnGetData(i, 4); 
     } 
//Stringify the object 
jsonArray = JSON.stringify(myArray); 

也許我的語法是關閉fnGetData?參考資料表明參數是(行,節點)。這是通過這張表獲得特定值的正確方法嗎?

回答

4

如果只想N型柱:

oTable = $('#example').dataTable(); 
var secondCellArray=[]; 
$.each(oTable.fnGetData(), function(i, row){ 
    secondCellArray.push(row[1]); 
}) 

替代方式......但你得到一個細胞內的HTML ... 您可以通過訪問所有行:

var rows = $("#myTable").dataTable().fnGetNodes(); 
for(var i=0;i<rows.length;i++) { 
//Get HTML of 3rd column (for example) 
cells.push($(rows[i]).find("td:eq(3)").html()); 
}