一個div相反,你可以使用ASCX用戶控件。然後,在aspx頁面的頁面加載中,您可以通過設置其Visible屬性來檢查所需的條件並顯示或不顯示ascx控件。
WebForm1.aspx的:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>
<%@ Register Src="~/WebUserControl1.ascx" TagPrefix="prefix" TagName="Ctrl" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
UC:
<prefix:Ctrl ID="ctrlTest" runat="server" />
</div>
</form>
</body>
</html>
WebForm1.aspx.cs中:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication1
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (something)
{
ctrlTest.Visible = true;
}
else
{
ctrlTest.Visible = false;
}
}
}
}
WebUserControl1.ascx:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl1.ascx.cs" Inherits="WebApplication1.WebUserControl1" %>
User control inside
如果你想在一個div一個彈出窗口,你可以執行通過調用RegisterStartupScript方法在代碼背後調用JavaScript。然後你可以用C#代碼檢查你的條件,如果他們沒問題,你可以調用腳本。
WebForm1.aspx.cs中:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication1
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
RegisterStartupScript("test", "<script>alert('test');</script>");
}
}
}
你爲什麼不嘗試的iframe,而不是單嗎?你可以通過asp.net代碼behinde隱藏和顯示iframe ..通過設置iframe runat = server – 2014-11-05 10:25:15
,因爲我要加載的是一個「彈出窗體」,所以圖層將被加載到頁面的前面。 iframe的解決方案是什麼?我遇到的問題是我想要JavaScript代碼behid。 – gigi 2014-11-05 10:27:22