有关网页执行的先后顺序
Prac2-9.aspx:
01:<Script Language="VB" Runat="Server">
02:  Sub Button_Click(sender As Object, e As EventArgs)
03:    Dim Answer As String
04:    Answer = TextBox1.Text
05:    Do While UCase(Answer)<>"HAPPY"
06:      Response.Redirect("Prac2-9.aspx")
07:    Loop
08:    Response.Write("答对了!")
09:  End Sub
10:</Script>
11:<Html>
12:  <Body>
13:    <Form Runat = "Server">
14:       请输入"快乐"的英文:
15:       <ASP:TextBox Runat="Server" Id="TextBox1"/>
16:       <ASP:Button Runat="Server" Text="确定" OnClick="Button_Click"/>
17:    </Form>
18:  </Body>
19:</Html>问题:网页里程序的执行顺序,是依次从上而下执行,还是先执行程序语言,还是先执行网页语言,如果先执行到第4行时,Answer变量获取TextBox1的Text的值,但如果执行到这里,TextBox.Text里的值还没获取,是不是第5-7行的DO While...Loop就没有执行,或取得TextBox1.Text里的空值,继续执行下去,(那么就会又重新刷新这个网页,不就形成了死循环),或等到TextBox1.Text里的值由客户端提交上来时,再次执行第5-7行的Do While...Loop还是全部重新执行这个网页只不过重新执行时加入了提交上来的TextBox1.Text里的值?

解决方案 »

  1.   

    网页里程序的执行顺序,是依次从上而下执行,还是先执行程序语言,还是先执行网页语言
    -------------都不是.页面先加载所有控件, 然后处理Page_Load事件,然后处理按钮单击或其他事件.然后继续输出所有控件的html.---------
    在sdk里查一下 "页面生命周期"
      

  2.   

    谢谢jianyi0115(随意) 的解答,我明白了