我是ASP.Net的新手,所以我的问题可能有点愚蠢,我不太明白每个阶段如何在ASP.Net页面生命周期中运行,我写了一些代码包含一个简单的页面标签控件和按钮控件,发现序列是:
1.处理页面初始化事件。
2.页面加载事件处理。
3.页面预先处理事件。
4.页面加载事件处理。
5.页面回发事件处理。
6.处理按钮点击事件。
7.页面处理prerender事件。
我的问题是:
为什么会出现两次像页面加载这样的事件?
人们通常说page_load事件发生在按钮点击事件之前。我不太明白,人们是否意味着在按钮点击事件之前处理page_load事件?如果是,那么我理解,所以它就像我们单击一个提交按钮,我们实际上触发2个事件,一个用于按钮点击事件,一个用于页面加载事件和页面加载事件首先处理?
< / LI>任何人都可以用简单的方式解释每个阶段的步骤吗?比如当用户点击按钮时,幕后发生了什么
答案 0 :(得分:2)
为什么像页面加载这样的事件会被引发两次?
每个来自服务器的页面请求都会引发一次PageLoad事件。当asp.net页面回发到服务器时,它的PageLoad事件将再次被调用。如果检查IIS日志,则应该从浏览器/客户端看到对该页面的两个请求。第一个是页面的原始请求,第二个是按下按钮后(我认为这会导致回发)。
人们通常说page_load事件发生在按钮点击事件之前。我不太明白,人们是否意味着在按钮点击事件之前处理page_load事件?如果是,那么我理解,所以它就像我们点击提交按钮,我们实际上触发2个事件,一个用于按钮点击事件,一个用于页面加载事件和页面加载事件首先处理?
在asp.net页面的生命周期中,它在客户端请求页面时开始,在页面呈现给客户端后结束。 Andrew Shepherd发送给您的链接提供了一个关于asp.net页面生命周期的非常好的教程。请务必阅读并理解它。
任何人都可以用简单的方式解释每个阶段的步骤吗?比如当用户点击按钮时,幕后发生了什么?
这实际上取决于你连接到按钮的内容。该按钮可能导致客户端脚本执行,或者可能导致在Web服务器上执行某些操作。