2009-12-24 59 views
1

我正在使用tablesorter jQuery插件對我的表進行一些排序。我使用這個的網站是在.Net 3.5中編程的,我使用ASP.NET AJAX和updatepanel來執行異步頁面更新。部分頁面中的動態Javascript Postback

我遇到的問題是當使用表分揀機,我有一些列,我想禁用排序。我有以下JavaScript代碼這樣做,

function pageLoad(sender, args) { 
     // Set table sorting in the load event so this takes care of partial page postbacks 
     $$("gvRosters").tablesorter({ 
      sortList: [[0, 0]], 
      widgets: ['zebra'], 
      8: { 
       // disable it by setting the property sorter to false 
       sorter: false 
      } 
     }); 
    } 

我想要隱藏的列是第9列,並且一切工作正常。我將這段代碼放在pageLoad函數中,這樣它就可以在部分回發上運行,它可以運行它。問題是我有一個鏈接按鈕,在頁面上調用異步更新,這會更改我的表中的可見列。因此,我需要隱藏的第9列成爲需要隱藏的第12列。我不知道正確的方法使用重新佈線隱藏的列,以便它讀取:

function pageLoad(sender, args) { 
     // Set table sorting in the load event so this takes care of partial page postbacks 
     $$("gvRosters").tablesorter({ 
      sortList: [[0, 0]], 
      widgets: ['zebra'], 
      11: { 
       // disable it by setting the property sorter to false 
       sorter: false 
      } 
     }); 
    } 

上,而不是一個局部回傳。基本上我需要做的是在部分回傳(它已經在pageLoad函數內部執行)時再次運行此代碼,但是我還需要動態更改運行的JavaScript代碼,以禁止在正確的列上排序。我很感謝您對此問題提供的任何見解。

回答

0

創建2種JavaScript方法,

  1. 最初在第一頁加載(這是9周的cols),

  2. 下一次修改的cols(使得12周的cols)。

最初直接從您的JavaScript代碼調用方法1。而從LinkBut​​ton的你可以調用使用

ScriptManager.RegisterStartupScript 

希望這有助於第二個JavaScript方法ASYN回發。

+0

這樣做的結果很好。感謝你的回答! – Nate32 2009-12-28 18:50:38