我在Asp.net中创建了一个示例程序,它可以在单击按钮时更新时间。此时间显示在标签中。按钮和标签都在更新面板内,说upd1。 以下是aspx代码
<script type="text/javascript" >
function fnhn() {
__doPostBack("upd1","");
return false;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager id="ScriptManager1" runat="server" EnablePageMethods ="true" > </asp:ScriptManager>
<div>
<asp:UpdatePanel ID="upd1" runat ="server" ><ContentTemplate >
<asp:label runat="server" id="lbl_c" ></asp:label>
<asp:button runat="server" id="btn_b" Text="Click" />
</ContentTemplate>
</asp:updatepanel>
</div>
</form>
</body>
以下是源代码。
Partial Class _Default
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
lbl_c.Text = Date.Now.ToString
End Sub
End Class
现在面临的问题如下。我可以在按钮点击时更新此时间而不在IE 10以外的任何浏览器中进行任何回发。在IE10中,我的整个页面都会刷新。我显然不想发生这种情况。 Plz帮助我们。
在一个帖子中,我也通过以下方式了解IE10的用户代理。
Protected Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init
If Request.UserAgent.ToLower.ToString.Contains("msie 10.0") Then
Page.ClientTarget = "uplevel"
End If
End Sub
哪个没帮我解决这个问题。 任何评论建议和解决方案都很有价值。
答案 0 :(得分:0)
您可以查看您的IE10是否允许使用Cookie吗?如果您在某些时候禁用了cookie,那么会话将无法正常工作(如果基于cookie),因此AJAX会导致完整的回发。
答案 1 :(得分:0)
您是否尝试过添加EnablePartialRendering?这应该是默认值,但可以在其他地方覆盖。
<asp:ScriptManager id="ScriptManager1" runat="server"
EnablePageMethods="true" EnablePartialRendering="true" />