这几天要做一个新项目了,学长提出一个防止刷新提交,并给我看了方法,对此我进行了研究,并发现有关Page_Load的调用问题。
刷新(即按下F5)读取的是缓存在浏览器中的数据,但它也属于第一次加载,会执行if(!IsPostBack){...}中的代码。
经过用断点测试,每次刷新页面中的数据读取的是历史数据 ,
<input id="hiddenTest" type="hidden" value="<%= GetToken() %>" name="hiddenTestN"/>
这些进行数据绑定的,不放在Page_Load里的,刷新读取的只是旧的数据 ,即按F5刷新前进行绑定的数据。但是如果是点击按钮执行事件 ,得到的是回传页,进行数据回传,会执行Page_Load里的事件,但不是!IsPostBack,但页面中的数据会重新进行绑定 ,上面的控件的数据会是新的数据 。