我正在尝试使用编辑/删除列动态地向表添加行。单击删除时,我想删除单击的行。
我已按以下方式初始化了我的表和数据:
$('#myTable').dataTable();
$("#myTableAddButton").click(function () {
var myVal1= $('#Val1').val();
var myVal2= $('#Val2').val();
var myVal3= $('#Val3').val();
$('#myTable').dataTable().fnAddData([
myVal1,
myVal2,
myVal3,
'<a href="#" onclick="EditRow();return false;">Edit</a> / <a href="#" onclick="deleteRow();return false;">Delete</a>'
]);
然后我的DeleteRow()
功能就是:
function deleteContactRow() {
//get the row of the cell that is clicked
var $row = $(this).closest("tr");
$row.delete();
}
但似乎row.delete不是一个有效的函数。是否有另一种删除行的方法?
编辑:$(this).remove()
和$row.remove()
都不起作用
答案 0 :(得分:0)
我认为你想要的魔力是
$row.parentNode.removeChild($row);
未测试。
答案 1 :(得分:0)
对于DataTables 1.9.x
function deleteContactRow() {
//get the row of the cell that is clicked
var $row = $(this).closest("tr");
$('#myTable').dataTable().fnDeleteRow($row.get(0));
}
来自manual:
fnDeleteRow
删除表格的一行输入参数:
{mixed}
:要删除的aoData
行的索引或要删除的TR
元素的索引{function|null}
:回调函数
{bool} [default=true]
:是否重绘表格返回参数:
{array}
:已删除的行
有关详细信息,请参阅fnDeleteRow。