繁体   English   中英

动态地将内容渲染到div元素中

[英]dynamically render the content into div element

我想通过文件(Example.ascx.cs)后面的代码将某些内容呈现到用户控件(Example.ascx)中的div部分中,

范例.ascx

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

Example.ascx.cs

void OnInit(EventArgs e)
        {
            this.PreRender += new EventHandler(Ex_PreRender);
            base.OnInit(e);
        }

void Ex_PreRender(object sender, EventArgs e)
        {

             this.DivElement.Load(@"<input type='hidden' name='{0}' id='{0}_VIEW' value='{2}' />
       <input type='hidden' name='{0}' value='{3}' />

                    <script type='text/javascript'>
                        $(document).ready(function() {{
                        _controllers['{0}'] = new ExController({{
                        id: '{0}',
                        src: '{1}',
                        }});
                       _controllers['{0}'].Load();
                         }});
                      </script>",
                        this.id,
                        this.src,
                        Request[this.id + "_VIEWSTATE"];);
        }

我如上所述尝试,但内容未加载到DivElement中。 谁能建议如何将上述元素渲染为div?

我可能会使用文字。

<div><asp:literal id="litContent" runat="server"></div>

然后在您的代码隐藏中,使用:

protected void Page_Load(object sender, EventArgs e)
{
    litContent.Text = "Your Content";
}

我还注意到您的字符串中有一些错误。 如果要在字符串中插入字符串,则需要使用string.Format()。

这是一个例子:

litContent.Text = string.Format("hello {0}.  I am a {1}", "you", "test");

因此,查看您的字符串,您将需要执行以下操作:

protected void Page_Load(object sender, EventArgs e)
{
    string id = "fetchThisFromSomewhere";
    string src = "fetchThisToo";
    litContent.Text = string.Format(@"
            <input type='hidden' name='{0}' id='{0}_VIEW' value='{2}' />
            <input type='hidden' name='{0}' value='{3}' />

            <script type='text/javascript'>
                $(document).ready(function() {{
                _controllers['{0}'] = new ExController({{
                id: '{0}',
                src: '{1}',
                }});
                _controllers['{0}'].Load();
                    }});
                </script>",
                id,
                src,
                Request[id + "_VIEWSTATE"]);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM