[英]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);
解析/提取span1
從mytext
,創建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.