2011-04-15 75 views
3

我們有一個使用ASP.NET Ajax的ASP.NET Web應用程序。我們從iPad的Safari內部打開它。它工作正常。ASP.NET/iPad Safari緩存問題?

我們將它作爲一個單獨的圖標保存到主屏幕。我們添加了元標記,使其無需Safari瀏覽欄即可全屏加載。它工作正常。

後來,我們重新打開它並注意到它已損壞。這是呈現的HTML的一部分,顯示哪些不起作用。

<a id="ctl00_Header1_btnHome" class="Button" href="javascript:__doPostBack('ctl00$Header1$btnHome','')" style="display:inline-block;font-size:Medium;height:35px;width:130px;">Main Menu</a> 
  1. 的內嵌樣式不被應用。 (這些樣式是由ASP.NET * .skin文件自動插入的。)
  2. 點擊鏈接不起作用。

在開放式工具啓用的情況下,在常規Safari中重新打開頁面,發現JavaScript錯誤。

TypeError: Result of expression 'Sys.WebForms' [undefined] is not an object.

從我所收集,無論是相關的ScriptResource.axd文件緩存,而不是重裝,或者重裝的時候,是不是再次調用一些初始化事件。

注意:清除Safari的緩存可以完成這項工作。有時候,瀏覽器中的刷新也是有效的。關閉&重新加載主屏幕上的圖標從不起作用。

您以前解決過這個問題嗎?

編輯: 我相信這是因爲我們查詢ScriptResource.axd的參數被Web服務器認爲是無效的。它因此以錯誤頁面的形式進行響應。它逃避了爲什麼新的default.aspx會被刷新,但它會指向一個帶有無效參數的ScriptResource.axd。

回答

1

將此添加到web.config(以禁用壓縮)似乎工作。

<system.web.extensions> 
<scripting> 
<scriptResourceHandler enableCompression="false" enableCaching="true" /> 
</scripting> 
</system.web.extensions> 
+0

劃痕 - 它不 - 只是暫時修復它。 – 2011-04-26 18:04:59