一个页面内,点击按钮后为何还要加载page_load
就是想问清楚什么时候会运行page_load??
------解决方案--------------------提交页面的时候,即刷新页面的时候都会触发page_load事件,你可以用Page.IsPostback属性来判断第一次页面提交
------解决方案--------------------重新加载页面
------解决方案--------------------page_load事件每次页面加载都会执行的。首先要理解虽然是按了按钮,其实对服务器来说和在地址栏打地址访问页面是一样的,只不过多了页面中保存的一些数据而已。所以服务器在加载页面的时候一样会触发page_load事件,用来初始化环境,因此一些只希望执行一次的代码需要增加ispostback的判断
------解决方案--------------------你不了解页面的生存周期才这样问的,你在请求页面后,服务器把页面类实例的所有要运行的事件运行一遍,包括page_load与page_unload事件,然后这个页面实例的生存周期就结束了,然后服务器向请求的客户端发生要生成网页的html文档,当你再次请求时,即按了按钮后,上述过程重新又进行了一遍,当然这次传入服务器的还有你操作的动作值,这样服务器根据你传入的值还要多执行相应的事件,至于服务器控件属性,一般也是随请求传入服务器的,可以保存值的,不用过多考虑,其他的想保留的值,可以用session对象保存
------解决方案------------------------一个页面内,点击按钮后为何还要加载page_load
按钮区分服务器端运行和客户端运行,一般服务器端运行的按钮,在执行服务器端事件的时候,需要与服务器进行沟通,排除使用ajax、xmlhttp等技术外,一般都需要页面重新装载才可以完成这次沟通过程,因此需要走page_load事件。