У меня есть modalpopup AJAX, который я хотел бы запускать при загрузке страницы. В настоящее время у меня есть следующие в моем Page_Load:Запуск модального всплывающего окна на кузове onload
HtmlGenericControl myBody = (HtmlGenericControl)Master.FindControl("thebody");
myBody.Attributes.Add("onload", "openMP();")
Это успешно внедряет функцию OnLoad (я могу сказать, глядя на источник). Однако функция onload никогда не срабатывает. Любые советы будут полезны. Благодарю.
* Изменения следующий вопрос *
Соответствующий код в главной странице:
<asp:LoginView ID="LoginView1" runat="server">
<LoggedInTemplate>
<a href="logout.aspx">
Соответствующий код в детской странице:
if (!Page.IsPostBack)
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "MyScript", "openMP();", true);
Response.Write("Test");
}
Я поместил это в свое событие Page_Load, и страница, кажется, постоянно обновляется (я никогда не вижу модальное всплывающее окно, просто перезагрузка главной страницы снова и снова). Любая идея, почему это может быть? Спасибо за вашу помощь. – 2009-08-26 16:14:25
Я предполагаю, что ваша функция openMP выполняет обратную передачу? Если это так, это заставит вас застревать в бесконечном цикле. Чтобы избежать этого, вы можете условно настроить RegisterStartupScript. – CAbbott
В openMP: document.getElementById ("ctl00_LoginView1_Button1"). Click(); (Кнопка 1 является целевой кнопкой, которая запускает modalpopup.) Как я могу избежать бесконечного цикла? Благодарю. – 2009-08-26 16:33:57