熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> JSP教程 >> 正文

DataTable刪除行後的頁面更新利用Ajax解決

2013-11-15 12:02:50  來源: JSP教程 

  使用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


From:http://tw.wingwit.com/Article/program/Java/JSP/201311/20147.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.