jQuery数据表删除行问题
我正在使用jQuery datatables来管理公司列表。jQuery数据表删除行问题,jquery,jquery-datatables,Jquery,Jquery Datatables,我正在使用jQuery datatables来管理公司列表。 除了我必须删除一行的部分之外,一切都很顺利。 因为删除的第一行效果很好,但是如果我在firefox控制台中删除另一行,它会显示删除的第一行和这一行 如果删除第三行,它将显示已删除的所有行 $s('body').on('click', '.del-firm', function(){ var aPos = oTable.fnGetPosition( $s(this).closest('tr')[0] ); var fir
除了我必须删除一行的部分之外,一切都很顺利。
因为删除的第一行效果很好,但是如果我在firefox控制台中删除另一行,它会显示删除的第一行和这一行 如果删除第三行,它将显示已删除的所有行
$s('body').on('click', '.del-firm', function(){
var aPos = oTable.fnGetPosition( $s(this).closest('tr')[0] );
var firm = $s(this).data('firm');
$s('#client-firms').block({
message: $s('.confirm-block'),
overlayCSS: {
backgroundColor: '#363636',
cursor: 'default'
},
css : {
border: '1px solid #D0D0D0',
background: 'linear-gradient(to bottom, #fcfcfc 0%, #fbfbfb 39%, #eeeeee 84%, #ebebed 100%) repeat scroll 0 0 rgba(0, 0, 0, 0)',
borderRadius: '3px',
color: '#707070',
padding: '5px',
cursor: 'default'
}
});
$s('#yes').click(function(){
$s('#client-firms').block({
message: 'Se proceseaza'
});
oTable.fnDeleteRow(aPos);
$s.ajax({
type: 'post',
url: 'index.php?controller=servlet&method=del_firm',
data: {
'id': firm
},
success: function(data){
$s('#client-firms').unblock();
}
});
newRow = false;
});
$s('#no').click(function(){
$s('#client-firms').unblock();
return false;
});
});
我会这样做:
$s('#client-firms').on('click', '.del-firm', function(){
$s(this).closest('tr').addClass('selected');
var firm = $s(this).data('firm');
var row = $s('#client-firms').find('.selected');
$s('#client-firms').block({
message: $s('.confirm-block'),
overlayCSS: {
backgroundColor: '#363636',
cursor: 'default'
},
css : {
border: '1px solid #D0D0D0',
background: 'linear-gradient(to bottom, #fcfcfc 0%, #fbfbfb 39%, #eeeeee 84%, #ebebed 100%) repeat scroll 0 0 rgba(0, 0, 0, 0)',
borderRadius: '3px',
color: '#707070',
padding: '5px',
cursor: 'default'
}
});
$s('#no').click(function(){
$s('#client-firms').unblock();
return false;
});
});
$s('#yes').on('click' , function(){
var row = $s('#client-firms').find('.selected');
var firm = row.find('.del-firm').data('firm');
$s('#client-firms').block({
message: 'Se proceseaza'
});
$s.ajax({
type: 'post',
url: 'index.php?controller=servlet&method=del_firm',
data: {
'id': firm
},
success: function(){
$s('#client-firms').unblock();
oTable.row(row).remove().draw();
}
});
newRow = false;
oTable.draw();
});
try var aPos=oTable.fnGetPosition($s(this.closest)(“tr”).get(0));我认为$s(this).reseact(“tr”).get(0)与$s(this)相同。reseact(“tr”)[0]您可能需要在成功回调中调用fnDraw()。#markpsmith相同的问题为此,您需要将datatable升级到1.10.2