我需要从Code Behind读取/显示一些前端代码/元素。
场景:我有一个页面,其中有两个(2)< div&gt ;,顶部div和底部div。
我在顶部有两个按钮< div>如下所示和< div>在底部是空白的。以下是代码段:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div id="navbar">
<asp:Button ID="btnHome" runat="server" Text="Home" OnClick="btnHome_Click" />
<asp:Button ID="btnProducts" runat="server" Text="Products" OnClick="btnProducts_Click" />
</div>
<div id="contentArea">
</div>
</form>
</body>
</html>
当我单击主页按钮时,一些HTML元素应该成为下面给出的div中Default.aspx页面的一部分:
<div id=contentArea">
</div>
并且居留代码应如下所示:
<div id="contentArea">
<h1>Home</h1>
<p>Home Elements here</p>
</div>
同样,当我点击“产品”按钮时,代码如下所示:
<div id="contentArea">
<h1>Products</h1>
<p>Products Elements here</p>
<asp:HyperLink ID="lnkMicrosoft" runat="server" Text="Go to Microsoft" NavigateUrl="http://www.microsoft.com"></asp:HyperLink>
<asp:HyperLink ID="lnkGoogle" runat="server" Text="Go to Google" NavigateUrl="http://www.google.com"></asp:HyperLink>
</div>
答案 0 :(得分:6)
您可以使用 面板 来显示呈现为div标签的html内容。
例如,
<div id="navbar">
<asp:Button ID="btnHome" runat="server" Text="Home" OnClick="btnHome_Click" />
<asp:Button ID="btnProducts" runat="server" Text="Products"
OnClick="btnProducts_Click" />
</div>
<asp:Panel ID="contentArea" runat="server">
</asp:Panel>
protected void btnHome_Click(object sender, EventArgs e)
{
var h1 = new HtmlGenericControl("h1") {InnerText = "Home"};
contentArea.Controls.Add(h1);
var p = new HtmlGenericControl("p") {InnerText = "Home Elements here"};
contentArea.Controls.Add(p);
}
protected void btnProducts_Click(object sender, EventArgs e)
{
var h1 = new HtmlGenericControl("h1") {InnerText = "Products"};
contentArea.Controls.Add(h1);
var p = new HtmlGenericControl("p") {InnerText = "Products Elements here"};
contentArea.Controls.Add(p);
var lnkMicrosoft = new HyperLink
{
Text = "Go to Microsoft",
NavigateUrl = "http://www.microsoft.com"
};
contentArea.Controls.Add(lnkMicrosoft);
var lnkGoogle = new HyperLink
{
Text = "Go to Google",
NavigateUrl = "http://www.google.com"
};
contentArea.Controls.Add(lnkGoogle);
}