javascript

位置:IT落伍者 >> javascript >> 浏览文章

DataTable删除行后的页面更新利用Ajax解决


发布日期:2019年05月09日
 
DataTable删除行后的页面更新利用Ajax解决

使用Jquery的DataTable进行数据表处理非常方便常遇到的一个问题就是删除一行后页面必须进行更新需要注意的方法如下前台页面中初始化table时注意

代码如下:

var table = $(#sortingadvanced);

tabledataTable({

bServerSide: true

sAjaxSource: servlet/UserList

bProcessing: true bStateSave: true

aoColumnDefs: [

{ bSortable: false aTargets: []}

]

sPaginationType: full_numbers

sDom: <"dataTables_header"lfr>t<"dataTables_footer"ip>

fnInitComplete: function( oSettings )

{

// Style length select

tableclosest(dataTables_wrapper)find(dataTables_length  select)addClass(select bluegradient glossy)styleSelect();

tableStyled = true;

}

});

bStateSave: true 这个必须设置这样就可以在删除返回时保留在同一页上bStateSave: true  这个必须设置这样就可以在删除返回时保留在同一页上

删除的代码如下

代码如下:

function deleteConfirm(deleteID)

{

$modalconfirm(确实要删除此用户吗? function()

{

$ajax(servlet/DeleteUser {

dataType : json

data: {

userID: deleteID

}

success: function(data)

{

if (datasuccess ==true)

{

$modalalert(删除成功!);

start = $("#sortingadvanced")dataTable()fnSettings()_iDisplayStart;

total =  $("#sortingadvanced")dataTable()fnSettings()fnRecordsDisplay();

windowlocationreload();

if((totalstart)==){

if (start > ) {

$("#sortingadvanced")dataTable()fnPageChange( previous true );

}

}

}

else

{

$modalalert(删除发生错误请联系管理员!);

}

}

error: function()

{

$modalalert(服务器无响应请联系管理员!);

}

});

} function()

{

//$modalalert(Meh);

});

};

其中只要是需要判断一下当前页中是否有数据如果是最后一条的话就在删除后调用

$("#sortingadvanced")dataTable()fnPageChange( previous true  );已回到上一页中

注意$("#sortingadvanced")dataTable()fnPageChange( previous);  是不行的必需进行刷新否则页面中显示的iDisplayStart会从cookie中取得还是删除前的iDisplayStart

               

上一篇:javascript中的escape是什么意思

下一篇:控制字体大小JS代码