asp.net – IE10中的LinkBut​​tons不执行回发

前端之家收集整理的这篇文章主要介绍了asp.net – IE10中的LinkBut​​tons不执行回发前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试添加一个简单的LinkBut​​ton到ASP.NET 4页面,但它不是在IE10调用回发.代码如下所示.

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后,我无法找到LinkBut​​ton调用方法.这对Firefox很好用.

任何想法我需要做什么?

解决方法

这是服务器修补/更新问题. ASP.NET尚未发布正确的JavaScript以供浏览器运行.它不知道IE版本比IE9更新.

见Scott Hanselman的帖子:

ASP.NET fails to detect IE10 causing _doPostBack is undefined JavaScript error or maintain FF5 scrollbar position

Scott在2011年的帖子中指出,修复应该通过Windows Update分发.确保您的服务器是Windows Update中.NET Framework服务更新的最新版本.如果不是,you can download the patchread more details on the Microsoft KB.

该修复将更新这些.browser文件,允许ASP.NET发出正确的标记和JavaScript.

%WinDir%\Microsoft.NET\Framework(64?)\v4.0.30319\CONFIG\Browsers\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>

猜你在找的asp.Net相关文章