Документация к ScriptManager.RegisterStartupScript Method (Control, Type, String, String, Boolean)
(я полагаю, вы используете эту перегрузку) гласит:
Блоки скриптов запуска, которые
зарегистрированы с использованием этого метода
отправляется на страницу только тогда, когда контроль
который регистрирует блок
внутри UpdatePanel
элемента управления, который
обновляется.
Я предполагаю, что вы вызываете метод ScriptManager.RegisterStartupScript
из своего пользовательского элемента управления (, который, как вы сказали, имеет панель обновления ). Это означает, что первый параметр метода не находится внутри элемента управления UpdatePanel
, который обновляется , поэтому блок сценария не зарегистрирован. Итак, изменив регистрацию скрипта на:
ScriptManager.RegisterStartupScript(
btnUpdate,
btnUpdate.GetType(),
"CloseEdit",
"CloseEditModal();",
true
);
должен решить вашу проблему. btnUpdate
вот кнопка внутри вас UpdatePanel
, которая вызвала обратную передачу (вы упомянули об этом в пункте 2).