做了一个小的通知发布系统,有登录界面default.aspx和功能界面main.aspx,在使用过程中,由于页面刷新存在问题,造成系统运行不稳定,有两个,先说第一个,另外一个另开贴说。使用IE8浏览器,如果打开登录界面前,IE8在浏览其他网站,开着一个窗口A,之后打开登录界面,运行完后,退出系统,此过程中一直保留窗口A。然后,如果再次使用IE8请求登录界面,则有问题:a. 登录界面上的验证码不更新,仍然是前一次打开default.aspx时候的,并且由于验证码是做在一个verify.aspx中的,这个页面同时会向Session里面放一个验证码的信息,验证码不更新,Session中没有验证码信息,登录界面不仅无法登录,还可能没有验证信息而报错。
b. 登录界面每次请求验证码时候,都会带一条DateTime.Now的字符串,以强制更新验证码(代码如下),但是在这种情况下,验证码依然不能更新,说明浏览器根本没有向服务器请求验证码,而是直接使用了上次的结果。img_verify.ImageUrl = ConfigurationManager.AppSettings["URL_Root"] + "pg_verify.aspx?Temp=" + DateTime.Now.ToString("yyyyMMddHHmmss");c. 如果用浏览器刷新,问题就解决,再次证明,浏览器根本没有向服务器请求一些资源。求解:
如何让页面每次加载时候,都强制更新页面上的元素,告诉浏览器,这个不能用上次请求时候的结果?