ASP.NET Webforms不会呈现Chrome / iOS的回传JavaScript函数

Mozilla/5.0 (iPhone; CPU iPhone OS 5_0_1 like Mac OS X; en-us) AppleWebKit/534.46.0 (KHTML, like Gecko) CriOS/21.0.1180.80 Mobile/9A405 Safari/7534.48.3Mozilla/5.0 (iPhone; CPU iPhone OS 5_0_1 like Mac OS X; en-us) AppleWebKit/534.46.0 (KHTML, like Gecko) CriOS/21.0.1180.80 Mobile/9A405 Safari/7534.48.3我们的.NET 4 webforms应用程序,定义__doPostBack函数的脚本不存在于页面上,因此没有使用它的工作。

如果我们提供任何其他用户代理string(比如说Safari),它就可以正常工作。 有人可以解释这个吗?

所以问题在于,Chrome用户代理不能被.net识别,所以它假设它正在处理一个低级别的浏览器。

为了解决,我们添加了~/App_Browsers/CriOS.browser以下内容:

 <browsers> <browser id="CriOS" parentID="Safari"> <identification> <userAgent match="CriOS" /> </identification> <capabilities> <capability name="browser" value="CriOS" /> <capability name="ecmascriptversion" value="3.0" /> <capability name="javascript" value="true" /> <capability name="javascriptversion" value="1.7" /> </capabilities> </browser> </browsers> 
Interesting Posts