今天遇到這樣一件事情,
復(fù)制代碼代碼如下:
var frmHeight = 352;
var frmWidth = 508;
var frmTop = (window.screen.height - frmHeight) / 2;
var frmLeft = (window.screen.width - frmWidth / 2);
var url = "ChosePerson.aspx";
var parameter = "dialogHeight:" + frmHeight + "px;dialogWidth:" + frmWidth + "px;dialogTop" + frmTop + "px;dialogLeft" + frmLeft + "px;scroll:0;status:0;reziable:1;";
var rval = window.showModalDialog(url, "", parameter);
window.showModalDialog()//第一次加載是走page_load()方法的,第二次加載時(shí)就不走page_load();
具體原因:
是緩存的問題,你第一次打開窗口后,第二次瀏覽器沒有從服務(wù)器端取數(shù)據(jù),而直接找到了你已經(jīng)下載的文件,
最終解決辦法:
1.設(shè)置瀏覽器屬性
將IE的設(shè)置改一下再試試,Internet選項(xiàng)->常規(guī)->設(shè)置->每次訪問此頁時(shí)檢查
(優(yōu)點(diǎn)全站重加載,可解決問題)
2.添加緩存,把以前的緩存給清除
//加入緩存,清除以前數(shù)據(jù),防止不進(jìn)行加載頁面
<%@ OutputCache Duration="1" VaryByParam="none"%>
(優(yōu)點(diǎn)只針對(duì)需要的界面加,節(jié)省時(shí)間)
//新增
3.(7/10測試時(shí)發(fā)現(xiàn)IE7不支持第2種緩存格式)沒辦法只有修改清除緩存代碼
在<head></head>中加入
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="0">