[英]Get access to div from code behind task
我需要創建一個應用程序,該應用程序應該能夠從后面的代碼中操作div內容。 但是我需要在不重新加載頁面的情況下更新此div。 我使用的功能基於任務。 我只是從這項技術開始。 這是我的代碼:
public partial class _Default : System.Web.UI.Page
{
public static System.Web.UI.HtmlControls.HtmlGenericControl elem = null;
protected void Page_Load(object sender, EventArgs e)
{
elem = div1;
}
protected void Button1_Click(object sender, EventArgs e)
{
TaskClass c = new TaskClass ();
Task.Factory.StartNew(() => c.Execute());
}
}
class TaskClass
{
public async Task Execute()
{
_Default.elem.InnerHtml = "123";
}
}
<%@ Page Language="C#" AutoEventWireup="true" Async="true" CodeBehind="Page.aspx.cs" Inherits="Class1._Default" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form runat="server">
<div id="div1" style="border:1px solid; width:800px; height:200px;overflow:auto;" runat="server"></div>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
</form>
</body>
</html>
問題在於div的內容沒有改變。 如果我嘗試在不使用任務的情況下添加一些內容,它將起作用。 有沒有一種方法可以在一個項目中使用aspx和任務?
恐怕您想要做的事情比您預期的要復雜得多。 網絡通過請求和響應進行操作。 通常,頁面與服務器之間沒有恆定的連接。 發送響應后,您將無法更改它,這就是代碼未更改任何內容的原因。 有兩種方法可以做您想要的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.