我已經創建了自定義服務器端WebControl。該控件調用一個初始化腳本,該腳本使用jQuery將加載頁面時調用的事件與鏈接進行綁定。使用jQuery的自定義WebControl,需要在UpdatePanel中工作
此控件現在在UpdatePanel中使用,顯然客戶端事件不再存在於UpdatePanel之後。所以,如果控件作爲局部頁面刷新的一部分被重新渲染,我需要重新運行我的初始化腳本,但我沒有看到這樣做的好方法。
我知道ScriptManager.IsInAsyncPostBack和UpdatePanel.IsInPartialRendering,但他們似乎並沒有提供我所需要的。它似乎正確實現了這一點,我將不得不檢查ScriptManager.IsInAsyncPostBack == true,然後在控件樹中搜索具有IsInPartialRendering == true的UpdatePanel。如果我找到這樣的UpdatePanel,那麼我重新運行我的初始化腳本。
聽起來很可怕。我錯過了一些簡單的東西嗎我不能成爲唯一一個以這種方式生活的人。
感謝您的閱讀!
現在更糟,UpdatePanel.IsInPartialRendering從未返回true,所以即使是討厭的解決辦法是行不通的。 – 2010-05-26 17:16:03