簡體   English   中英

如何從代碼后面找到span並為其添加用戶控件?

[英]How can I find span from code behind and add user control to it?

我有一個div

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

現在我正在從代碼隱藏(c#)這樣添加HTML

PageContent.InnerHtml =mytext;

其中mytext是我要在PageContent div中添加的內容,mytext包含一些文本之間的跨度(可以是任何字符串),類似這樣的東西

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

如何從代碼后面找到span並為其添加用戶控件?

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

解析/提取span1mytext ,創建HtmlGenericControl這個解析信息,將其添加到PageContent格,然后嘗試添加用戶控件這個span

 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中添加這樣的跨度,然后您將在后面的代碼中找到它。 試試這個。 希望這將解決您的目的。

您可以根據需要在跨度中添加屬性。

要使用后面的代碼添加跨度的純標記,請按以下代碼進行操作

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM