3

我在Windows 8的IE 10應用程序中遇到了一些asp.net ajax問題。但它在IE 10兼容模式下正常運行Sys.WebForms.PageRequestManager.getInstance()不支持在IE 10和Windows 8中

你可以看到我的這個here的實時演示,它在所有瀏覽器中都能正常工作,而不是IE 10(在Windows 7上的IE9中也能正常工作)。

不知道是什麼原因?

我的網頁上我正在註冊此事件: -

var prm = Sys.WebForms.PageRequestManager.getInstance(); 

prm.add_endRequest(function() { 
    page_Load(); 
}); 

$().ready(function() { page_Load(); }); 

function page_Load() { 
    //my code for onload registration goes here(it all working fine) 
} 

請幫助我。 最好的問候

回答

3

而不是Sys.WebForms.PageRequestManager.getInstance();你可以試試jQuery .on()方法。

例如:

$('html').on('click', '.selector', function() { 
    page_Load(); 
}); 
+0

我使用更新面板..就是這個代碼也適用於更新面板..? –

+1

是的,jQuery .live,.delegate&.on與更新面板一起使用。 –

+1

另外,你可以嘗試http://updatepanelplugin.codeplex.com/插件。 –

3

服務器可能無法識別的Internet Explorer 10的支持JavaScript的Web瀏覽器。運行Windows Update爲我解決了這些問題。

如果你不能更新你的服務器,你可以嘗試在app_browser文件夾中添加/修改你的ie.browser。

如果您無法訪問整個機器和/或只想更新單個項目,請使用NuGet安裝App_BrowsersUpdate軟件包。您的解決方案資源管理器中的網站結構將看起來像右側的圖像。請注意,NuGet使用.NET 4,因此對於只有.NET 2的系統,您需要獲取ZIP文件並手動將新瀏覽器文件放在App_Browsers中。

.NET 4瀏覽器更新NuGet包 - http://nuget.org/List/Packages/App_BrowsersUpdate 安裝包App_BrowsersUpdate .NET 2.0瀏覽器更新NuGet包 - http://nuget.org/List/Packages/App_BrowsersUpdate.net20 安裝包App_BrowsersUpdate.net20 注意的NuGet是VS2010具體的,所以如果你沒有的NuGet .exe和.NET 4,您還可以將.NET 2更新的瀏覽器文件從該zip文件手動複製到〜\ App_Browsers中。 更新整個機器是解決這個問題的首選方法。