在一個相當複雜的頁面上,我們通過IE6
中的下拉列表獲得了一些不尋常的行爲。要佈局基本結構,頁面上有2個更新面板,每個面板上都有一個GridView
,用於顯示主要細節佈局。除網格外,每個面板還包含一些用於過濾相應GridView
中的數據的DropDownLists
。定時器會導致dropdownlists在模式彈出後永久消失
現在發生的事情是底部網格上的一個按鈕將導致顯示一個模式彈出窗體,其中有關行項目的一些細節可以修改。根據ASP.NET
AJAX
JavaScript
,DropDowns
在postback
期間禁用,並在關閉後重新啓用。
底部網格還附帶一個定時器,定期更新它以保持數據視圖的新鮮。當這個計時器在模式彈出窗口關閉後打勾時,下拉列表會神祕地消失,除了在更新panel
中顯然會再次呈現的那些。
奇怪的是,如果計時器在彈出窗口打開時彈出,則彈出窗口可以提前顯示並通過模態顯示(哦IE6 ...),但稍後不會消失。
Yuck。您的下拉菜單在代碼隱藏中不是動態編碼的嗎?另外,值得注意的是,使用更新面板時,面板內的所有內容都會在每次回發時通過服務器發送,因此大量內容會導致大量(通常很慢)的請求。但是,你必須做你應該做的。 – 2010-04-08 18:35:01
我認爲你的問題與回發觸發器有關(你是否在你的定時器的特定的更新面板上嘗試了一個觸發器?)和更新面板中的'update ='conditional/always''參數。如果「Page_Load」對你的下拉菜單做任何事情,那麼問題也可能出現在那裏。 – 2010-04-08 18:37:23