asp.net:在不刷新的情况下更新页面内容(部分页面更新)
本文关键字:更新 分页 net 刷新 asp 情况下 | 更新日期: 2023-09-27 18:36:27
实际上我正在尝试在不刷新整个页面的情况下更新页面,即部分页面更新。网页结构为
<%@ Page Title="Test Page" Language="C#" AutoEventWireup="true" CodeBehind="Test.aspx.cs" Inherits="WebApp.Test" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager runat="server"></asp:ScriptManager>
<asp:DropDownList AutoPostBack="true" ID="dropDownName" runat="server"></asp:DropDownList>
<asp:UpdatePanel ID="UpdatePanel" runat="server">
<ContentTemplate>
Last update: <%=DateTime.Now.ToString() %>
<asp:PlaceHolder ID="PlaceHolder1" runat="server"></asp:PlaceHolder>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</form>
</body>
</html>
现在我可以看到,当我的事件触发时,它会做每件事,例如读取内容,使用正确的更新信息更新页面上的控件以及将内容 webControls 添加到占位符,如下所示
void Contnt_Update(object sender)
{
PlaceHolder1.Controls.Add(newLabel);
}
但它只是简单地不更新"视图"(意味着我没有在网页上看到更新的信息),也没有更新"上次更新"的时间。知道我做错了什么吗?任何帮助将不胜感激,因为我花了很多时间在上面,却没有得到任何地方......
您可以尝试使用以下方法强制更新: UpdatePanel.Update();
,并遵循此处给出的其他建议: ASP.NET 刷新更新面板
更新:强制刷新 UpdatePanel 而不执行用户任何操作的另一种技术是在面板中包含一个计时器,如此处所建议的那样。