在更新UpdatePanels后,在初始加载时添加Javascript

时间:2011-03-24 01:10:36

标签: javascript asp.net updatepanel alert onload

在我的Page_Load命令页面上,我在屏幕显示之前执行了几项测试,并显示一个警告框,显示用户是否无法访问该屏幕。

     If Not Page.IsPostBack Then

   UpdatePanel1.ContentTemplateContainer.Controls.Add(ctl)
   UpdatePanel1.Update

   UpdatePanel2.ContentTemplateContainer.Controls.Add(ctl)
   UpdatePanel2.Update

    If ScreenAccessible = False

   ScriptManager.RegisterStartupScript(Me, Me.GetType(), "denied", "alert('Access Denied');", True)
    End If : End If

我认为根据上述过程的顺序,更新面板应首先更新,然后会出现警告消息。

但是,警报消息首先显示,更新面板为空。当我单击警告框上的“确定”按钮时,更新面板将正确呈现。

如何在更新面板呈现后允许JavaScript警告框出现?

1 个答案:

答案 0 :(得分:1)

你有没有尝试过:

If ScreenAccessible = False

    ScriptManager.RegisterStartupScript(Me, Me.GetType(), "denied", _
        "setTimeout(function(){alert('Access Denied');},300);" , True)

End If

参考:
http://www.w3schools.com/jsref/met_win_settimeout.asp