繁体   English   中英

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

[英]How to add HTML elements Dynamically (ASP.NET)

我正在动态创建LINKbuttons:

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循环中实例化控件,则可以有效地顺序添加每个控件。 首先,创建您的LinkBut​​ton实例并分配其属性。 然后,创建您想使用的任何种类的分隔符控件。 在此示例中,我使用了HtmlGenericControl,它允许我们分配(分隔符的)文本属性。 请注意,我从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.stackoverflow.com");
    }
}

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

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);
            }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM