Итак, у меня есть UserControl
с каскадным DropDownList
на нем. Выбор из списка 1 включает список 2, который, в свою очередь, включает список 3. После того, как вы сделали выбор во всех трех списках, вы можете перейти на следующую страницу.
DropDownList
находятся внутри UpdatePanel
. Но кнопка "Следующая страница" находится за пределами UpdatePanel
. Эта кнопка должна быть отключена до тех пор, пока все три списка не будут выделены, а затем снова должны быть включены. Но поскольку кнопка находится за пределами UpdatePanel
, она не обновляется, когда я делаю выбор. ( Изменить. Кнопка "Следующая страница" находится на странице, которая также содержит UserControl
.)
Я знаю один способ решить эту проблему:
var scriptManager = ScriptManager.GetCurrent(this.Page);
scriptManager.RegisterPostBackControl(dropDownList1);
scriptManager.RegisterPostBackControl(dropDownList2);
scriptManager.RegisterPostBackControl(dropDownList3);
Это обеспечивает обратную передачу при изменении любого раскрывающегося списка, чтобы кнопка могла обновляться. Но если я это сделаю, я мог бы упростить, избавившись от UpdatePanel
в первую очередь.
Есть ли другой способ, с помощью какого-то умного JavaScript или что-то еще, что я могу обновить элемент управления вне UpdatePanel
, не отказываясь от Ajax?