所以基本上我通过后端的litterals将元素添加到我的html中。 在asp内容占位符中使用它时效果很好。但我需要它成为特定页面上的另一个特定位置。我尝试使用runat =“server”制作div,但它似乎不起作用。有没有人对我能使用的东西有任何经验?这是我的代码的一部分:
foreach (var something in somethingelse)
{
this.Page.Form.FindControl("ContentPlaceholder1")
.Controls.Add(
new LiteralControl("It's a long list, so just typing this.")
);
}
答案 0 :(得分:0)
您可以在div上使用runat =“server”。例如:
<div id="myNewDiv" runat="server"></div>
并在后面的代码中:
myNewDiv.InnerHtml = "Some new text in the div";
如果您需要动态创建div,可以执行以下操作:
for (var i = 0; i < 10; i++)
{
var ele = new HtmlGenericControl("div")
{
InnerHtml = string.Format("new div {0}", i),
ID = string.Format("NewDiv_{0}", i)
};
Page.Form.FindControl("MainContent").Controls.Add(ele);
}
你甚至可以将新的div推送到ContentPlaceHolder中任何位置的现有div:
var page = Page.Form.FindControl("MainContent").FindControl("myNewDiv").Controls;
for (var i = 0; i < 10; i++)
{
var ele = new HtmlGenericControl("div")
{
InnerHtml = string.Format("new div {0}", i),
ID = string.Format("NewDiv_{0}", i)
};
page.Add(ele);
}
答案 1 :(得分:0)
在源代码中放置HTML标记,如下所示
<table>
<tbody>
<-- Your literal control here -->
</tbody>
</table>
并在set literal1.Text ="<tr><td>'"+ Your data here +"'</td></tr>"
后面的代码中,它将起作用