所以我有一個UserControl
,它上面有一些級聯的DropDownList
。從列表1中選擇將啓用列表2,列表2將啓用列表3.一旦在三個列表中進行了選擇,就可以進入下一頁。在UpdatePanel之外更新控件
DropDownList
s都在UpdatePanel
之內。但「下一頁」按鈕不在UpdatePanel
之外。該按鈕應該被禁用,直到所有三個列表都有選擇,然後應該再次啓用。但由於該按鈕位於UpdatePanel
之外,所以在進行選擇時它不會更新。 (編輯:「下一頁」按鈕是還包含UserControl
一個頁面上。)
我知道要解決這個辦法:
var scriptManager = ScriptManager.GetCurrent(this.Page);
scriptManager.RegisterPostBackControl(dropDownList1);
scriptManager.RegisterPostBackControl(dropDownList2);
scriptManager.RegisterPostBackControl(dropDownList3);
這確保回發時,任何下拉列表更改,以便按鈕可以更新。但是,如果我這樣做,我可能會簡化擺脫UpdatePanel
首先。
有沒有另外一種方法,通過一些聰明的JavaScript或其他東西,我可以更新一個UpdatePanel
以外的控件,而不必放棄Ajax?
這是最接近我必須做的。我只需在主頁面上調用一個方法(強制使用this.Page)來正確設置Next按鈕,而不是觸發器。我還必須在Next按鈕上使用RegisterPostBackControl才能使其在UpdatePanel中工作。 – 2009-02-03 02:32:05