2016-03-28 59 views
1

我試圖在單擊外部按鈕時使用DataTable(新版本)修改單元格值。 我見現在以下:如何在單擊按鈕時在DataTable中設置單元格值

$(document).on('click', '.dropdown-menu li a', function() { 
    if ($(this).text() == "development") { 
     var cell = table.row(6).data()[4]  
     cell.data("development").draw(); 
    } 
}); 

,因爲我認爲錶行和數據檢索方法不具有的.data()屬性,讓我來設置數據單元格的值返回一個對象這不起作用。我收到以下錯誤:cell.data is not a function. (In 'cell.data("development")', 'cell.data' is undefined)但是,我不確定如何訪問表格單元格值.data()方法,即使在表格中也沒有點擊。我的按鈕放置在其他地方的桌子外面。

任何想法如何使這項工作?

回答

1

您可以使用fnUpdate數據表功能只需按行和列索引更新任何特定的單元格。

是這樣的:

var oTable = $('#example').dataTable(); 
$('#button').click(function() { 
    var row = document.getElementById("indexDepRow").value; 
    var col = document.getElementById("indexDepCol").value; 
    oTable.fnUpdate('development', parseInt(row), parseInt(col)); 
}); 

JsFiddle EXAMPLE

1

由於數據表1.10+可能不支持的API登陸頁面本身提到fnGetNodes(),而不是現在你可以使用行()節點。 ()。

例子:http://jsfiddle.net/cmedina/7kfmyw6x/28/

var table = $('#example').DataTable({sorting : false}); 
var row = table.row(0).node(); 

$('#test').on('click', function() { 
    var text = "development"; 
    if (text == "development") { 
     table.cell(row, 0).data('Development').draw(); 
    } 
}); 

如果用數據表工作< 1.10,那麼你可以使用fnUpdate

例子:http://jsfiddle.net/cmedina/7kfmyw6x/29/

var oTable = $('#example').dataTable({sorting:false}); 

$('#test').on('click', function() { 
    var text = "development"; 
    if (text == "development") { 
    oTable.fnUpdate('Development', 0, 0); // Single cell 
    } 
}) 
相關問題