微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net – ImageButton不会在IE10上发回帖子

最近,我们在IE10上测试了我们的产品,并遇到了一个问题,即服务器按钮控件“Asp:ImageButton”不会在带有UpdatePanel的IE10上触发.
以下是示例代码
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        Here is the content.
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="buttonSubmit" />
    </Triggers>
</asp:UpdatePanel>
<br />
<br />
<asp:Button ID="buttonSubmit" runat="server" ToolTip="Submit" OnClick="buttonSubmit_Click" />
</form>

服务器端:

protected void buttonSubmit_Click(object sender,ImageClickEventArgs e)
    {
        ScriptManager.RegisterStartupScript(this,this.Page.GetType(),"alert","alert('It works.')",true);
    }

这有两件让我困惑的事情:
一个是问题只发生在我在IIS上部署并在VS上调试时工作正常.
这两个是如果我删除了上面的两个标签“br”,事件就会被触发.此外,如果我将ImageButton更改为Button,也会触发该事件.

所以,我不知道我是否遗漏了某些东西或误解了ImageButton和Button控件的生命周期.
任何帮助都会非常感激.

测试环境:VS2010,IIS 7.5,IE10(10.0.9200.16484)

解决方法

只需安装.NET Framework 4.5即可解决此问题.

此问题可能是由ImageButton IE10错误造成的,该错误涉及IE10错误地将坐标转换为十进制而不是整数.这导致在IE10上的许多(如果不是大多数情况)情况下,ImageButton点击失败.

即使您不将应用程序池切换到.NET Framework 4.5,也可以解决此问题.

就我而言,我在.NET Framework 3.5中离开了应用程序池.显然安装.NET Framework 4.5会覆盖其他框架版本的一些文件.

请参阅变通方法部分here

相关:IE10 sending image button click coordinates with decimals (floating point values) causing a ParseInt32 FormatException

原文地址:https://www.jb51.cc/aspnet/251938.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐