在子页中隐藏模板页中的div示例代码
更新时间:2013年08月30日 16:12:29 作者:
模板页右边包含了一个登陆div,想让没登陆的时候这个div显示,登陆后该div隐藏,具体的实现如下,需要的朋友可以参考下
需求如下:
1.模板页右边包含了一个登陆div,想让没登陆的时候这个div显示,登陆后该div隐藏
2.显示一个欢迎用户的div,主要是想通过javascript来隐藏
注意:模板页里是不能使用RegisterClientScriptBlock注册和执行javascrip的,
所以javascript的注册和执行放在page页中来实现了
Main.master模板页里的内容
<!--登录小div-->
<div class="loginDiv">
<div class="LoginDivTitle">
会员登录
</div>
<table class="loginTable">
<tr>
<td class="LoginLabel">用户名:</td>
<td><input type="text" class="loginTxt" id="txtUserName" /></td>
</tr>
<tr>
<td class="LoginLabel">密码:</td>
<td><input type="password" class="loginTxt" id="txtPass" /></td>
</tr>
<tr>
<td class="LoginTdButtons" colspan="2">
<input src="../images/az-login-gold-3d.gif" type="image" id="btnLogin" />
<input src="../images/az-newuser-gold-3d.gif" type="image" id="btnReg" />
</td>
</tr>
</table>
</div>
<div class="loginOkDiv" style="display:none">
<span class="spanLoginOk" id="spanUserInfo">
尊敬的<%=serverUserName %>,欢迎你光临!
</span>
</div>
<1>.在后台Main.master中的代码
protected string serverUserName;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Model.Users user = Session["currUser"] as Model.Users;
if (user != null)
{
serverUserName = user.Name;
}
}
}
<2>MainPage主页面中后台代码,它是继承于模板页Main.master的
public partial class MainPage : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Model.Users user = Session["currUser"] as Model.Users;
if (user != null)
{
common.CommonCode.ExecuteScriptFunc(this,true);
}
else
{
common.CommonCode.ExecuteScriptFunc(this,false);
}
}
}
}
<3>ExecuteScriptFunc封装代码
public static void ExecuteScriptFunc(System.Web.UI.Page page, bool bShowUserInfo)
{
string func = "function showUser(isLogin){\r\n\r\nif (isLogin) {\r\n" +
"$(\".loginDiv\").hide();\r\n" +
"$(\".loginOkDiv\").show();\r\n" +
"}\r\n" +
"else {\r\n" +
"$(\".loginDiv\").show();\r\n" +
"$(\".loginOkDiv\").hide();\r\n" +
"}}";
string func1 = "";
if (bShowUserInfo)
{
func1 = func + "\r\n" +
"$(function(){\r\nshowUser(true)" +
"});";
}
else
{
func1 = func + "\r\n" +
"$(function(){\r\nshowUser(false)" +
"});";
}
page.ClientScript.RegisterStartupScript(page.GetType(), Guid.NewGuid().ToString(),
func1, true);
//page.ClientScript.RegisterStartupScript(page.GetType(), Guid.NewGuid().ToString(),
// func1);
}
1.模板页右边包含了一个登陆div,想让没登陆的时候这个div显示,登陆后该div隐藏
2.显示一个欢迎用户的div,主要是想通过javascript来隐藏
注意:模板页里是不能使用RegisterClientScriptBlock注册和执行javascrip的,
所以javascript的注册和执行放在page页中来实现了
Main.master模板页里的内容
复制代码 代码如下:
<!--登录小div-->
<div class="loginDiv">
<div class="LoginDivTitle">
会员登录
</div>
<table class="loginTable">
<tr>
<td class="LoginLabel">用户名:</td>
<td><input type="text" class="loginTxt" id="txtUserName" /></td>
</tr>
<tr>
<td class="LoginLabel">密码:</td>
<td><input type="password" class="loginTxt" id="txtPass" /></td>
</tr>
<tr>
<td class="LoginTdButtons" colspan="2">
<input src="../images/az-login-gold-3d.gif" type="image" id="btnLogin" />
<input src="../images/az-newuser-gold-3d.gif" type="image" id="btnReg" />
</td>
</tr>
</table>
</div>
<div class="loginOkDiv" style="display:none">
<span class="spanLoginOk" id="spanUserInfo">
尊敬的<%=serverUserName %>,欢迎你光临!
</span>
</div>
<1>.在后台Main.master中的代码
复制代码 代码如下:
protected string serverUserName;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Model.Users user = Session["currUser"] as Model.Users;
if (user != null)
{
serverUserName = user.Name;
}
}
}
<2>MainPage主页面中后台代码,它是继承于模板页Main.master的
复制代码 代码如下:
public partial class MainPage : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Model.Users user = Session["currUser"] as Model.Users;
if (user != null)
{
common.CommonCode.ExecuteScriptFunc(this,true);
}
else
{
common.CommonCode.ExecuteScriptFunc(this,false);
}
}
}
}
<3>ExecuteScriptFunc封装代码
复制代码 代码如下:
public static void ExecuteScriptFunc(System.Web.UI.Page page, bool bShowUserInfo)
{
string func = "function showUser(isLogin){\r\n\r\nif (isLogin) {\r\n" +
"$(\".loginDiv\").hide();\r\n" +
"$(\".loginOkDiv\").show();\r\n" +
"}\r\n" +
"else {\r\n" +
"$(\".loginDiv\").show();\r\n" +
"$(\".loginOkDiv\").hide();\r\n" +
"}}";
string func1 = "";
if (bShowUserInfo)
{
func1 = func + "\r\n" +
"$(function(){\r\nshowUser(true)" +
"});";
}
else
{
func1 = func + "\r\n" +
"$(function(){\r\nshowUser(false)" +
"});";
}
page.ClientScript.RegisterStartupScript(page.GetType(), Guid.NewGuid().ToString(),
func1, true);
//page.ClientScript.RegisterStartupScript(page.GetType(), Guid.NewGuid().ToString(),
// func1);
}
相关文章
Asp.net实现无刷新调用后台实体类数据并以Json格式返回
本文主要分享了Asp.net实现无刷新调用后台实体类数据并以Json格式返回的具体实例方法,具有一定的参考价值,有需要的朋友可以看下2016-12-12
如何在ASP.NET Core中使用ViewComponent
这篇文章主要介绍了如何在ASP.NET Core中使用ViewComponent,帮助大家更好的理解和学习使用.net技术,感兴趣的朋友可以了解下2021-04-04
.Net WebApi中实现自动依赖注入的三种方法(最新推荐)
依赖关系注入 (DI) ,是一种软件设计模式,这是一种在类及其依赖项之间实现控制反转 (IoC) 的技术, .NET 中的依赖关系注入是框架的内置部分,与配置、日志记录和选项模式一样,这篇文章主要介绍了.Net WebApi中实现自动依赖注入的三种方法,需要的朋友可以参考下2024-03-03


最新评论