2010-05-11 91 views
0

我檢查的asp.net生成的你html頁面,我可以看到這行註冊的JavaScript處理函數來處理CollapsiblePanelExtender事件

Sys.Application.initialize(); 
Sys.Application.add_init(function() { 
    $create(AjaxControlToolkit.CollapsiblePanelBehavior, 
    { 
     "ClientStateFieldID":"rptActiveQuotes_ctl01_qcQuote_cpeDetails_ClientState", 
     "CollapseControlID":"rptActiveQuotes_ctl01_qcQuote_imgShowHide", 
     "Collapsed":true, 
     "CollapsedImage":"Images/expandablePlus.gif", 
     "ExpandControlID":"rptActiveQuotes_ctl01_qcQuote_imgShowHide", 
     "ExpandedImage":"Images/expandableMinus.gif", 
     "ImageControlID":"rptActiveQuotes_ctl01_qcQuote_imgShowHide", 
     "id":"rptActiveQuotes_ctl01_qcQuote_cpeDetails" 
    }, 
    null, 
    null, 
    $get("rptActiveQuotes_ctl01_qcQuote_pDetails")); 
}); 

我認爲它是從CollapsiblePanelExtender產生與名cpeDetails。我看到你可以傳遞一些事件給它,現在它是空的(第三個參數)。我應該如何設置add_ended事件?

回答

0

AJAX控制/增量劑有一堆OnClient屬性,分配的方法的名稱作爲處理程序作爲在OnClientClicked =「funcname的」的。您可以在服務器上定義它,並將其連接到客戶端。您也可以在客戶端上註冊一個事件處理程序,如:

var o = $find("<%= cpeDetails.ClientID %>"); 
o.add_<event>(function(sender, e) 
    //event handler code 
}); 

所以,你可以做o.add_ended(函數(){/ *處理* /})。有沒有結束的事件?我不記得是一個選項...

HTH。