我使用的是asp.net和chrome,並且頁面在一段時間後變得無響應。當我查看chrome調試時,我發現內存使用增加到大約80MB,並且chrome彈出一個請求來終止頁面。當彈出窗口出現時,錯誤計數器會旋轉併產生大約30,000個錯誤。觸發錯誤的是更新面板的調用。在chrome中顯示的錯誤是「無法加載資源」。頁面將內存使用量爆炸爲80MB,然後死亡
更新面板:用戶單擊按鈕並刷新面板。頁面上只有一個更新面板。
這是我有:
function HistoryUIActions() {
$('.SelectDay, .SelectDay1Digit').click(function() { GetNewDate(this); });
};
function GetNewDate(thedateitem) {
var TheDay = $.trim($(thedateitem).html());
TheYear = 2011;
ThisMonth = 2;
DateString = ThisMonth + '/' + TheDay + '/' + TheYear;
__doPostBack('<%= TheUpdatePanel.ClientID %>', DateString);
};
function EndRequestHandler(sender, args) {
HistoryUIActions();
};
在每個回發的誤差化合物:1,4,11,26,57,120,247 ....最終鉻殺死頁面。當我在函數中放置一個斷點時,它會在我按下按鈕之後停止代碼;然後在它遇到__doPostBack行之後,它會再次啓動GetNewDate函數幾次,返回到click事件的行,顯然執行上面顯示的次數。
有什麼建議嗎?
生成的錯誤是什麼?這聽起來像是某種無限循環在某處發生,但是這段代碼並沒有向我提出任何建議。它是否進行回發?它是不止一個?它只是當你點擊它,它變得沒有反應(我假設這就是爲什麼你發佈上述代碼?)... – Chris
是不是應該在__doPostBack中使用.UniqueID?我認爲這段代碼會導致所有的UpdatePanel刷新。有可能是另一個可能導致連鎖反應? –
EvalMonthYear()是做什麼的? – Paddy