程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> window.showModalDialog兩次加載問題清除緩存方法

window.showModalDialog兩次加載問題清除緩存方法

編輯:ASP.NET基礎
今天遇到這樣一件事情,
復制代碼 代碼如下:
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()方法的,第二次加載時就不走page_load();

具體原因:
是緩存的問題,你第一次打開窗口後,第二次浏覽器沒有從服務器端取數據,而直接找到了你已經下載的文件,

最終解決辦法:
1.設置浏覽器屬性
將IE的設置改一下再試試,Internet選項->常規->設置->每次訪問此頁時檢查
(優點全站重加載,可解決問題)

2.添加緩存,把以前的緩存給清除
//加入緩存,清除以前數據,防止不進行加載頁面
<%@ OutputCache Duration="1" VaryByParam="none"%>
(優點只針對需要的界面加,節省時間)
//新增

3.(7/10測試時發現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">
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved