[英]LinkButtons in IE10 not performing posting back
我正在尝试将一个简单的LinkButton
添加到ASP.NET 4页面,但它没有在IE10中调用postback
。 代码如下所示。
HTML:
<form id="form1" runat="server">
<div>
<asp:LinkButton ID="LinkButton1" runat="server"
OnClick="LinkButton1_Click">LinkButton</asp:LinkButton>
<br />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</div>
</form>
C#:
protected void Page_Load(object sender, EventArgs e) { }
protected void LinkButton1_Click(object sender, EventArgs e)
{
Label1.Text = DateTime.Now.ToString();
}
如您所见,它只是一个简单的页面。 但是,自升级到Win8和IE10以来,我无法让LinkButton
调用该方法。 这适用于Firefox。
有什么想法我需要做什么?
这是服务器修补/更新问题。 ASP.NET没有为您的浏览器发出正确的JavaScript来运行。 它不知道IE版本比IE9更新。
请参阅Scott Hanselman的帖子:
ASP.NET无法检测IE10导致_doPostBack未定义JavaScript错误或维护FF5滚动条位置
Scott在2011年的帖子中指出,修复程序应该通过Windows Update分发。 确保您的服务器是最新的Windows Update .NET Framework服务更新。 如果没有, 您可以下载补丁或阅读Microsoft KB上的更多详细信息 。
该修补程序将更新那些.browser
文件,允许ASP.NET发出正确的标记和JavaScript。
%WINDIR%\\ Microsoft.NET \\框架(64?)\\ v4.0.30319 \\ CONFIG \\浏览器\\ ie.browser
这将包含以下项目:
<!-- Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0) -->
<browser id="IE10Plus" parentID="IE6Plus">
<identification>
<capability name="majorversion" match="\d{2,}" />
</identification>
<capabilities>
<capability name="jscriptversion" value="6.0" />
</capabilities>
</browser>
您有补丁修补程序在Internet Explorer和Mozilla Firefox的浏览器定义文件中引入了更新的定义。 浏览器定义文件存储在以下文件夹中,具体取决于安装的Microsoft Framework le.NET版本:
对于32位版本的Framework 4.0.NET
%WinDir%\\ Microsoft.NET \\ Framework \\ v4.0.30319 \\ CONFIG \\ Browsers
对于64位版本的Framework 4.0.NET
%WinDir%\\ Microsoft.NET \\ Framework64 \\ v4.0.30319 \\ CONFIG \\ Browsers
点击此处下载补丁: http : //support.microsoft.com/hotfix/KBHotfix.aspx? kbnum = 2600088&kbln = fr
这是由于IE10中的安全设置。 出于某种原因,我的本地Intranet设置比公共网站更严格。 所以我无法点击超链接,但我可以点击提交表单的按钮。
你应该安装.Net Framework 4.5,它对我有用。
您需要为此安装修补程序。 Scott Hanselman在他的博客上解释了这一点。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.