从代码后面页面插入HTML

本文关键字:插入 HTML 代码 | 更新日期: 2023-09-27 18:16:23

我遇到了ASP.NET的一个问题。我正在使用c#。

使用SQL查询,我有数据库中的行数,我需要编写相同数量的div标记来显示结果。

代码

count是包含行数的变量。

Projects is a List

for (int i = 0; i < count; i++)
{
    form1.Controls.Add(new Literal() { 
         ID = "ltr" + i,
         Text = "<div class= 'container' >Name = " + Projects[i].Name + " ;</div>" });
}

但是有一个问题,我必须把这些div放到另一个ID = Container的div中。

这样,文字控件就不会被放置到div#Container 中

我怎么能把结果到一个div?

从代码后面页面插入HTML

代替Literal控件,它被设计为呈现文本,而不是html标签,您可以使用HtmlGenericControl:

HtmlGenericControl div = new HtmlGenericControl();
div.ID = "div" + i;
div.TagName = "div";
div.Attributes["class"] = "container";
div.InnerText = string.Format("Name = {0} ;", Projects[i].Name);
form1.Controls.Add(div);

Panel控件,该控件呈现为div,其中包含Literal:

Panel div = new Panel();
div.ID = "panel" + i;
div.CssClass = "container";    
div.Controls.Add(new Literal{Text = string.Format("Name = {0} ;", Projects[i].Name)});    
form1.Controls.Add(div);

你应该使用Repeater Control,它会很容易使用。

步骤
  1. 取一个SqlDatasource
  2. 采取中继器控制。
  3. 设置数据源为。
  4. 设计你喜欢的itemTemplate
  5. 做. . !

如果有任何疑问,请点击链接