如何动态添加 HTML 个元素 (ASP.NET)

How to add HTML elements Dynamically (ASP.NET)

我正在动态创建 LINK 按钮:

Lnk1

Lnk2

..

我想动态地在它们之间添加文本(或任何 HTML 元素),例如:

Lnk1
Seperator
Lnk2
Sepeperator

这是我的代码:

 for (int i=0;i<10;i++)
            {
    form1.Controls.Add(lnks[i]);
    Response.Write("Seperator<br>");
}

但是在输出中我得到了下图:

请告诉我如何恰好在一个 linkBut​​ton 之后添加一个文本。

尝试将其用作参考。它在我过去的项目中的工作代码。

for (int i = 0; i <= rows - 1; i++)
            {
                HyperLink MyLink = new HyperLink();

                //Set the Hyperlink Text and ID properties.
                MyLink.Text = "YOUR TEXT";
                MyLink.ID = "Link Id";
                // Add a spacer in the form of an HTML <br /> element.
                Panel1.Controls.Add(new LiteralControl("<br />"));
                Panel1.Controls.Add(MyLink);
            }

看看这个方法。你走在正确的轨道上,但你需要考虑表格本身。该表单有一个名为“控件”的集合 属性。如果在 for 循环中实例化控件,则可以有效地按顺序添加每个控件。首先,创建您的 LinkBut​​ton 实例并为其分配属性。然后,创建您想要使用的任何类型的分隔符控件。我在这个例子中使用了一个 HtmlGenericControl,它允许我们分配一个文本 属性(Separator)。请注意,为了匹配您的示例,我从 1 而不是 0 开始循环……希望这会有所帮助。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        for (int i = 1; i < 11; i++)
        {
            LinkButton linkButton = new LinkButton();
            linkButton.Text = "Lnk" + i;
            linkButton.Click += linkButton_Click;
            form1.Controls.Add(linkButton);

            HtmlGenericControl p = new HtmlGenericControl("p");
            p.InnerText = "Separator";
            form1.Controls.Add(p);
        }
    }

    void linkButton_Click(object sender, EventArgs e)
    {
        Response.Redirect("http://www.whosebug.com");
    }
}