簡體   English   中英

如何使用ASP.NET C#將div標簽添加到while循環中

[英]How to add div tag into while loop using asp.net c#

我這樣創建了一個名為profile.aspx的網頁。

<div id="div1">
    <asp:Label ID="Label1" runat="server" >
        //Name
    </asp:Label>
    <asp:Label ID="Label2" runat="server">
        //Satutes 
    </asp:Label>
</div>

這是此文件的profile.aspx.cs文件

此選擇查詢

cmd.CommandText = "SELECT Name,Status FROM [ProfileStatusPhoto] 
           WHERE Email = '" + Session["Email"].ToString() + "'";

這是while循環

while (dr.Read())
{
    status += dr["Status"].ToString();
    name += dr["name"].ToString();
    Label1.Text = name;
    Label2.Text = status;
}

我不知道如何在div標簽上方加入此循環?

你可以做點什么

<div id="container" runat="server">

</div>

在您的頁面上加載

cmd.CommandText = "SELECT Name,Status FROM [ProfileStatusPhoto] WHERE Email = @Email";
cmd.Parameters.AddWithValue("@Email", Session["Email"].ToString());
while (dr.Read())
{
    System.Web.UI.HtmlControls.HtmlGenericControl div = 
    new System.Web.UI.HtmlControls.HtmlGenericControl("div");    
    Label nameLabel = new Label();
    status += dr["Status"].ToString();
    name += dr["name"].ToString();
    nameLabel.Text = name;
    Label statusLabel = new Label();
    statusLabel.Text = status;
   div.Controls.Add(nameLabel);
   div.Controls.Add(statusLabel);
   container.Controls.Add(div);
}

因此,您將擁有一個容器,其中每個name-status對將創建一個帶有兩個標簽的div

僅當不是POstBack時才加載這些數據

if (!IsPostBack) {
    //load data
}

如果要隨時間動態更新頁面,則應在.aspx文件中放置一個計時器並刷新頁面或執行AJAX調用並使用JavaScript創建div。

如果要使用計時器控件進行部分更新,請查看此線程

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM