如何在asp.net中创建HTML标签,如ul,li,a等
详细而且以最简单的方式使用所有HTML标签和动态方式。
答案 0 :(得分:9)
如果我理解正确,您可以使用Repeater控件:
<ul>
<asp:Repeater runat="server" ID="repeater1">
<ItemTemplate>
<li> <%# Container.DataItem %> </li>
</ItemTemplate>
</asp:Repeater>
</ul>
然后将此控件与您的数据集合绑定:
repeater1.DataSource = YourCollectionOfStringHere;
repeater1.DataBind();
希望它会有所帮助。如果没有,抱歉这个)
答案 1 :(得分:7)
嗯,这是最简单但不是面向对象的方式:
添加到.aspx文件:
<asp:Literal ID="myLiteral" runat="server"></asp:Literal>
添加到.aspx.cs文件:
myLiteral.Text = "<ul><li>apple</li><li>orange</li><li>kiwi</li></ul>";
不好,但有效:)
最简单的面向对象的方法是使用HtmlGenericControl类。您可以使用它创建任何标签,至少可以确保正确关闭这些标签。创建&lt; div&gt;的示例:
string s="This is <strong>a test</strong> of the html HtmlGenericControl class";
HtmlGenericControl ge = new HtmlGenericControl("div");
ge.InnerHtml=s;
this.PlaceHolder1.Controls.Add(ge);
请记住,这两种解决方案都有效,但两者都不是完成任务的好方法。用于生成&lt; a&gt;标签你应该使用HtmlAnchor控件,对于&lt; div&gt;你应该使用&lt; asp:Panel&gt; for&lt; span&gt;你应该使用&lt; asp:Label&gt;,为你的列表你应该使用&lt; asp:BulletedList&gt;或转发器控制等。
希望这有帮助。
答案 2 :(得分:7)
使用HtmlGenericControl。这正是你要找的东西:
http://msdn.microsoft.com/en-us/library/7512d0d0(v=VS.90).aspx
答案 3 :(得分:3)
您可以使用BulletedList控件创建ul / li集:
它还有一个DisplayMode,您可以使用它来显示超链接:
答案 4 :(得分:1)
你可以像普通的html一样创建它们:
示例:
<ul type="disc">
<li>A</li>
<li>B</li>
<li>C</li>
<li>D</li>
<li>E</li> </ul>
如果要将它们转换为服务器端控件,只需添加runat =“server”
即可