All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
ASP.NET从零起步设计网站全过程(1)_[Asp.Net教程]
PHP应用:PHP在linxu下的安装与配置_[PHP教程]
ASP.NET改变checkboxlist选中项字体颜色_[Asp.Net教程]
MS SQL数据库备份和恢复存储过程(加强版本)_[SQL Server教程]
visit c++中打开数据与关闭数据连接
apache中httpd.conf的中文件详解_[PHP教程]
入门知识:动态网页PHP编程中字符串5个技巧_php资料_编程技术
PHP防注入攻击过滤HTML代码函数_[PHP教程]
asp.net,自定义分页控件_[Asp.Net教程]
利用OleDb对象,将数据库中全部表转换成XML文件_[Asp.Net教程]
Reading number is top 10 pictures
NeedWallpaper9
Sell the barbecue as says father du breul3
Chinese paper-cut grilles art appreciation8
乳娘帕梅拉安德森4
Sora aoi mirror memorial classics2
Average female college students2
南昌铁路局宜春车务段攸县车站铁路职工福利房被开发商侵占
乳娘帕梅拉安德森2
某某人向找小三的人宣战了
福利是必须的
Download software ranking
C#高级编程(第4版)
linux初级教程
豪门浪荡史
apache-tomcat-6.0.33
VeryCD电驴(EasyMule) V1.1.9 Build09081
美女写真3
Red cliff
美女写真2
Tram sex maniac 2 (H) rar bag4
jdk1.5
delv published in(发表于) 2014/1/8 7:02:19 Edit(编辑)
ASP.NET页面HEAD区动态设置全攻略_[Asp.Net教程]

ASP.NET页面HEAD区动态设置全攻略_[Asp.Net教程]

ASP.NET页面HEAD区动态设置全攻略_[Asp.Net教程]

网页head区,不能用普通控件,但它有时又很重要,比如title、keywords、description,可能每个页面都不同,那么怎么样才能根据内容动态设置它们呢?

  方法1:asp能做到的,asp.net当然可以做到,只要你把整个页面都用Response.Write()写出来,没有什么不能自定义的,当然也可以"<%=某个成员%>"。但很明显,这样发挥不了.net的特点。


  方法2:利用asp.net的特有属性:runat="server",给title设置一个id,然后让它成为服务器变量,那就可以设置其文本了。但这样出来的html里边也会带有id,看着实在不爽。


  方法3:利用Literal控件,前台:







  后台:


private void Page_Load(object sender, System.EventArgs e)
{
lt_title.Text = "标题";
lt_keywords.Text = "";
lt_descri.Text = "";
}


  这样就基本达到完美了。


  更进一步,我的页面用了不少用户控件,并且这些用户控件有层次,而决定页面title的,可能是某个用户控件中的子用户控件来决定的,而且用户控件的嵌套层次不固定。 那要怎么来动态设置呢?


  首页,做一个用户控件的基类,并且给它增加1个public方法:


public void SetTitle(string title)
{
SetLiteralText("lt_title", string.Format("{0}", title));
}再增加一个private方法:
private void SetLiteralText(string id, string text)
{
Literal lt = null;
Control ctrl = this;
do
{
ctrl = ctrl.Parent;
}while(ctrl != null && ctrl.GetType().FullName != "System.Web.UI.HtmlControls.HtmlForm" );


if(ctrl != null)
{
lt = ctrl.FindControl(id) as Literal;
if(lt != null)
lt.Text = text;
}
}


  这样,你的用户控件只需要让它继承自这个基类,然后在你想设置页面的title时调用base.SetTitle("标题"),就简单的完成了任务。对于head区其它标记,原理和设置title一样。


来源:网络







添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.