webform页面加载顺序
场景:主页面引入了多个用户控件,其中某一个用户控件上有一个文本框,页面加载的时候,用jQuery隐藏起来。点击提交按钮(服务区控件的按钮),弹出alert,这个时候,原本隐藏起来的用户控件的文本框,样式全部失效,也无法隐藏起来了。
原因:隐藏文本框的JS 代码,写在了用户控件上。点击提交按钮,页面会重新走一遍webform生命周期。在弹出alert的时候,控件已经加载,此时还没有加载用户控件上的JS代码
解决方法:在主页面上写样式文件 #id{display:none},在用户控件上给文本框加一个id
转载自:https://www.cnblogs.com/q149072205/p/3976992.html
1. Master page中的用户控件的 page_init
2. Aspx页面中的用户控件的 page_init
3. Master page的page_init
4. Aspx的 page_init
5. Aspx的page_load
6. Master page的page_load
7. Master page中的用户控件的 page_load
8. Aspx页面中的用户控件的 page_load
.aspx、.master、ascx这三个页面中
Page_Load的执行顺序是:.aspx中的pg-->.master中的pg-->ascx中的pg( pg-->page_load)
主页面的page_load->母版页的page_load->UC的page_load->主页面的js->母版页的jS->UC的js