【问题标题】:How can I find span from code behind and add user control to it?如何从后面的代码中找到 span 并向其中添加用户控件?
【发布时间】:2013-10-15 09:13:54
【问题描述】:

我有一个 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 并向其中添加用户控制?

【问题讨论】:

    标签: c# html asp.net c#-4.0 user-controls


    【解决方案1】:
    //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);
    

    【讨论】:

    • 您可能需要添加一些解释。
    【解决方案2】:
     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中添加属性。

    【讨论】:

    • 你不需要 span.InnerHtml = "";span.Attributes["id"] = "span"; 没有它也可以正常工作,因此进行了必要的更改。
    • 当我按照您所说的添加跨度后添加用户控件时,它会在 text 之后添加到我的页面中,并且当您查看 HTML 跨度时会在 这是一些你好文本
    【解决方案3】:

    从您的mytext 解析/提取span1,使用此解析信息创建HtmlGenericControl,将其添加到PageContent div,然后尝试将用户控制添加到此span

    【讨论】:

    • 但关键是他正在运行时创建该跨度。这样做也不会给
    • 你是对的@AnirudhAgarwal.. 编码器我已经尝试过了,它不起作用。
    • 好吧@coder你回答的是应该完成的整个过程,如果你能告诉我它是如何完成的,那就太好了?
    【解决方案4】:

    要添加纯标签与后面的代码,请按照以下代码

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

    【讨论】:

      猜你喜欢
      • 2013-03-20
      • 2012-03-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-11
      • 1970-01-01
      • 2013-09-12
      • 2013-12-01
      • 1970-01-01
      相关资源
      最近更新 更多