5

我有一个 div

<div id="PageContent" runat="server"></div>

现在我正在从后面的代码(c#)中添加HTML,就像这样

PageContent.InnerHtml =mytext;

mytext我想在 div 中添加的内容在哪里PageContent,mytext 包含一些文本之间的跨度(它可以是任何字符串),像这样

This is some <span id="span1"> </span> text

如何从后面的代码中找到 span 并向其中添加用户控件?

4

4 回答 4

4
//This is some <span id="span1" runat="server"> </span>

//In the code behind...

var span1 = this.FindControl("span1") as HtmlGenericControl;
var controlPath = "path of your user control";
var someControl = LoadControl(controlPath);
span1.Controls.Add(someControl);
于 2013-12-11T13:16:32.047 回答
0
 var span = new HtmlGenericControl("span");
 span.InnerHtml = "Hello ";
 span.Attributes["id"] = "span";
 span.ID = "span";
 String myTesxt = @"This is some " + span.InnerHtml + " text";
 myDiv.InnerHtml = myTesxt;
 span.InnerHtml = "";

 myDiv.Controls.Add(span);
 var a=myDiv.FindControl("span");

尝试在您的 Div 中添加这样的跨度,然后您会在后面的代码中找到它。尝试这个。希望这将解决您的目的。

您可以根据需要在 span 中添加属性。

于 2013-10-15T10:28:25.600 回答
0

解析/提取span1您的mytextHtmlGenericControl使用此解析信息创建,将其添加到PageContentdiv 然后尝试将用户控件添加到此span.

于 2013-10-15T09:26:24.877 回答
0

要使用后面的代码添加跨度的纯标签,请按照以下代码

    StringBuilder sb = new StringBuilder();
    sb.Append("<script>");            
    sb.Append("alert('aa')");
    sb.Append("</script>");
    HtmlGenericControl span = new HtmlGenericControl("span");
    span.InnerHtml = sb.ToString();
    this.form1.Controls.Add(span);
于 2018-05-21T04:02:31.040 回答