2011-05-24 118 views
4

我有一個不尋常的問題。我的Web應用程序中的每個頁面都會加載兩次!在調試時,onload事件被擊兩次。我查看了iis日誌並看到了相同的內容。.net頁面無理由加載兩次

我的應用程序是.net 3.5,在IIS7中運行的asp.net c#。

它發生在多種不同的環境中。

它不僅僅是一個頁面,而是網站上的所有頁面。爲了測試這個,我創建了一個空白頁面,沒有標記例如。我讀的圖像或iframe上沒有空的源標籤可能導致它。我也從web.config和httphandlers中刪除了所有httpmodules,但仍然發生。

我現在沒有想法,所以任何人有任何建議或提示給我?

+4

YSlow和類似的擴展在過去引起了這種行爲。值得檢查嗎? – Toby 2011-05-24 00:02:01

+1

這就是它 - YSlow插件導致它! – amateur 2011-05-24 00:16:12

回答

0

可以有不同的原因,

  • 入住不同的瀏覽器,看看是否有任何加載項會導致。
  • 檢查它,如果你是在調試模式下,然後調試代碼如果可能的話,看看它是如何 真的加載兩次回發調用next負載
  • 見。
+0

YSlow插件正在造成它! – amateur 2011-05-24 00:16:19

0

您需要檢查AutoEventWireUp是否設置爲true,並且手動將監聽器添加到Load事件。這(或某些變體)會成爲你的問題(這是相當常見的;這裏有幾個相關的問題)。

0

我認爲它更好的使用一些web調試工具來跟蹤請求。我建議使用Fiddler

1

我知道你已經回答了你自己的問題,但對於其他人在此着陸......

幾年前,我想通了,網頁被裝上兩次(無奈天)每次回發都是因爲有人編寫了自定義控件來呈現html內容,但是這些控件中存在一個導致一些格式不正確的錯誤(我不記得是什麼,可能他們忘記了某個結束標記),這導致我的瀏覽器重新加載頁面。

查找您的瀏覽器使用生成的標記找到的任何錯誤,並將其作爲您的疑難解答的一部分糾正。