Мастер-страница получила ScriptManager.
Затем я получил элемент управления с ScriptManagerProxy и UpdatePanel.
Внутри UpdatePanel я динамически добавляю элемент управления (также содержащий ScriptManagerProxy) ииз этого элемента управления мне нужно запустить некоторый код JavaScript.
DynamicControl.ascx:
<script type="text/javascript">
function doSomething() {
alert(1);
}
</script>
DynamicControl.ascx.cs:
public void Page_Load(object sender, EventArgs e)
{
...
ScriptManager.RegisterStartupScript(
this.Page, this.GetType(), "scriptID",
"<script type='text/javascript'>doSomething();</script>", false);
Моя проблемаявляется то, что функция "doSomething ()" никогда не вызывается, и я не знаю почему.: S Редактировать: он вызывается, но не напрямую, когда я добавляю элемент управления.
Если я сделаю код, подобный этому, появится окно предупреждения:
"<script type='text/javascript'>alert(1);</script>"
Хорошо, я думаю, что мне нужно добавить больше информации:
Элемент управления динамически добавляется в диалоге jQuery.И я узнал, что javacode сначала выполняется после того, как я закрываю, а затем открываю диалог.Я думаю, что происходит какое-то событие, так что там выполняется код.Можно ли форсировать это событие?поэтому сценарии выполняются непосредственно при добавлении элемента управления?
placeHolder.Controls.Add(dynamicReportControl);
Этот код на c # не выполняет тег javascript немедленно?